ref: 2e258c1d7419c170acb950b6af3b3b924c856b2f
parent: 6c25be8561ef1bda9eefaa4fe330dd9037d4c4ee
author: Ori Bernstein <ori@eigenstate.org>
date: Mon Jan 22 18:20:07 EST 2018
Bring back old addresses, with a better explanation.
--- a/6/simp.c
+++ b/6/simp.c
@@ -542,6 +542,15 @@
case Ostruct: r = rval(s, n, NULL); break;
case Oucon: r = rval(s, n, NULL); break;
case Oarr: r = rval(s, n, NULL); break;
+
+ /*
+ not expressible as lvalues in syntax, but
+ we take their address in matches
+ */
+ case Oudata: r = rval(s, n, NULL); break;
+ case Outag: r = rval(s, n, NULL); break;
+ case Otupget: r = rval(s, n, NULL); break;
+
default:
fatal(n, "%s cannot be an lvalue", opstr[exprop(n)]);
break;