about summary refs log tree commit diff stats
path: root/045closure_name.cc
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2016-04-24 11:54:30 -0700
committerKartik K. Agaram <vc@akkartik.com>2016-04-24 11:54:30 -0700
commitb0bf5321de2ba32f3b92c2faf6b7b68a06b6b432 (patch)
tree9e0473bddd0d9a2d4aec7ac58dec8d85c2833a5d /045closure_name.cc
parent15936c91a9f8023dc868a021029f84b45aa50176 (diff)
downloadmu-b0bf5321de2ba32f3b92c2faf6b7b68a06b6b432.tar.gz
2864 - replace all address:shared with just address
Now that we no longer have non-shared addresses, we can just always
track refcounts for all addresses.

Phew!
Diffstat (limited to '045closure_name.cc')
-rw-r--r--045closure_name.cc26
1 files changed, 12 insertions, 14 deletions
diff --git a/045closure_name.cc b/045closure_name.cc
index 23b10f0c..48a84442 100644
--- a/045closure_name.cc
+++ b/045closure_name.cc
@@ -5,22 +5,22 @@
 
 :(scenario closure)
 def main [
-  default-space:address:shared:array:location <- new location:type, 30
-  1:address:shared:array:location/names:new-counter <- new-counter
-  2:number/raw <- increment-counter 1:address:shared:array:location/names:new-counter
-  3:number/raw <- increment-counter 1:address:shared:array:location/names:new-counter
+  default-space:address:array:location <- new location:type, 30
+  1:address:array:location/names:new-counter <- new-counter
+  2:number/raw <- increment-counter 1:address:array:location/names:new-counter
+  3:number/raw <- increment-counter 1:address:array:location/names:new-counter
 ]
 
 def new-counter [
-  default-space:address:shared:array:location <- new location:type, 30
+  default-space:address:array:location <- new location:type, 30
   x:number <- copy 23
   y:number <- copy 3  # variable that will be incremented
-  return default-space:address:shared:array:location
+  return default-space:address:array:location
 ]
 
 def increment-counter [
-  default-space:address:shared:array:location <- new location:type, 30
-  0:address:shared:array:location/names:new-counter <- next-ingredient  # outer space must be created by 'new-counter' above
+  default-space:address:array:location <- new location:type, 30
+  0:address:array:location/names:new-counter <- next-ingredient  # outer space must be created by 'new-counter' above
   y:number/space:1 <- add y:number/space:1, 1  # increment
   y:number <- copy 234  # dummy
   return y:number/space:1
@@ -52,13 +52,11 @@ void collect_surrounding_spaces(const recipe_ordinal r) {
       if (!type
           || type->value != get(Type_ordinal, "address")
           || !type->right
-          || type->right->value != get(Type_ordinal, "shared")
+          || type->right->value != get(Type_ordinal, "array")
           || !type->right->right
-          || type->right->right->value != get(Type_ordinal, "array")
-          || !type->right->right->right
-          || type->right->right->right->value != get(Type_ordinal, "location")
-          || type->right->right->right->right) {
-        raise << "slot 0 should always have type address:shared:array:location, but is " << to_string(inst.products.at(j)) << '\n' << end();
+          || type->right->right->value != get(Type_ordinal, "location")
+          || type->right->right->right) {
+        raise << "slot 0 should always have type address:array:location, but is " << to_string(inst.products.at(j)) << '\n' << end();
         continue;
       }
       string_tree* s = property(inst.products.at(j), "names");