aboutsummaryrefslogtreecommitdiff
path: root/src/parser.y
diff options
context:
space:
mode:
Diffstat (limited to 'src/parser.y')
-rw-r--r--src/parser.y6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/parser.y b/src/parser.y
index b4c0035..dd744c0 100644
--- a/src/parser.y
+++ b/src/parser.y
@@ -381,7 +381,11 @@ stack
struct val t = IDALLOC($[id]);
INSADD(ALLOC, $[type], t, noclass(), noclass(), $[int]);
}
-
+ | type id "=" "^" id {
+ struct val t = IDALLOC($2);
+ struct val f = IDTOVAL($5);
+ INSADD(ADDR, $[type], t, f, noclass(), 0);
+ }
| "^" "^" int {
INSADD(DEALLOC, NOTYPE, noclass(), noclass(), noclass(), $[int]);
}