]> Cypherpunks repositories - gostls13.git/commitdiff
gc: handle printing of string/arrayrune conversions
authorLuuk van Dijk <lvd@golang.org>
Wed, 18 Jan 2012 08:52:16 +0000 (09:52 +0100)
committerLuuk van Dijk <lvd@golang.org>
Wed, 18 Jan 2012 08:52:16 +0000 (09:52 +0100)
Fixes #2714.

R=rsc
CC=golang-dev
https://golang.org/cl/5540066

src/cmd/gc/fmt.c

index 09e73c7b926019fc03bfd7de1e7b6ee43c2786a4..15466844bebaef525e18647a6dbb1af9b0c7d7d2 100644 (file)
@@ -943,6 +943,7 @@ static int opprec[] = {
        [OAPPEND] = 8,
        [OARRAYBYTESTR] = 8,
        [OARRAYLIT] = 8,
+       [OARRAYRUNESTR] = 8,
        [OCALLFUNC] = 8,
        [OCALLINTER] = 8,
        [OCALLMETH] = 8,
@@ -969,6 +970,8 @@ static int opprec[] = {
        [OPRINT] = 8,
        [ORECV] = 8,
        [ORUNESTR] = 8,
+       [OSTRARRAYBYTE] = 8,
+       [OSTRARRAYRUNE] = 8,
        [OSTRUCTLIT] = 8,
        [OTARRAY] = 8,
        [OTCHAN] = 8,
@@ -1214,7 +1217,9 @@ exprfmt(Fmt *f, Node *n, int prec)
        case OCONVIFACE:
        case OCONVNOP:
        case OARRAYBYTESTR:
+       case OARRAYRUNESTR:
        case OSTRARRAYBYTE:
+       case OSTRARRAYRUNE:
        case ORUNESTR:
                if(n->type == T || n->type->sym == S)
                        return fmtprint(f, "(%T)(%N)", n->type, n->left);
@@ -1372,7 +1377,8 @@ nodedump(Fmt *fp, Node *n)
                        indent(fp);
                }
        }
-               fmtprint(fp, "[%p]", n);
+
+//     fmtprint(fp, "[%p]", n);
 
        switch(n->op) {
        default: