shithub: mc

Download patch

ref: 0226a1a631e50ac5ad042efc85cf5d5461f5b0f8
parent: 4eb9ecac4d2b38388efeebf00c64492a668461a1
author: Ori Bernstein <[email protected]>
date: Tue Jan 21 08:36:45 EST 2014

Take slices off of *evaluated* pointers.

--- a/6/simp.c
+++ b/6/simp.c
@@ -826,7 +826,7 @@
     u = NULL;
     ty = tybase(exprtype(n));
     switch (ty->type) {
-        case Typtr:     u = n; break;
+        case Typtr:     u = t; break;
         case Tyarray:   u = addr(s, t, base(exprtype(n))); break;
         case Tyslice:   u = load(addr(s, t, mktyptr(n->line, base(exprtype(n))))); break;
         default: die("Unslicable type %s", tystr(n->expr.type));