summaryrefslogtreecommitdiff
path: root/src/cmd/gc/subr.c
diff options
context:
space:
mode:
authorKen Thompson <ken@golang.org>2008-12-09 13:00:50 -0800
committerKen Thompson <ken@golang.org>2008-12-09 13:00:50 -0800
commit89d072f29afc9e0f6aede75c0f9906789b43d18f (patch)
tree70629f6809b7d3c45fba3a377917fa078a66b838 /src/cmd/gc/subr.c
parent2a6a6a917ab745ffc5c916213e8339f642212b80 (diff)
downloadgolang-89d072f29afc9e0f6aede75c0f9906789b43d18f.tar.gz
robs bug converting unsafe.pointer
R=r OCL=20834 CL=20834
Diffstat (limited to 'src/cmd/gc/subr.c')
-rw-r--r--src/cmd/gc/subr.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/cmd/gc/subr.c b/src/cmd/gc/subr.c
index cd2fc4d2d..5638df4b7 100644
--- a/src/cmd/gc/subr.c
+++ b/src/cmd/gc/subr.c
@@ -1779,6 +1779,8 @@ loop:
goto loop;
case TANY:
+ if(!st->copyany)
+ return 0;
*stp = t;
break;
@@ -1841,6 +1843,11 @@ deep(Type *t)
nt = t; // share from here down
break;
+ case TANY:
+ nt = shallow(t);
+ nt->copyany = 1;
+ break;
+
case TPTR32:
case TPTR64:
case TCHAN: