about summary refs log tree commit diff stats
path: root/010vm.cc
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2016-01-17 23:15:03 -0800
committerKartik K. Agaram <vc@akkartik.com>2016-01-17 23:15:03 -0800
commit83d8299d2d966c39b4970828ff5743a5b05e3287 (patch)
treed2b0203d068b1c5651c58928c0f2fdf98d558789 /010vm.cc
parent94fed2020040cf469bd47c8890ed4e609e3ed561 (diff)
downloadmu-83d8299d2d966c39b4970828ff5743a5b05e3287.tar.gz
2562
We want to use the type 'recipe' for recipe *variables*, because it
seems nicer to say `recipe number -> number` rather than recipe-ordinal,
etc. To support this we'll allow recipe names to be mentioned without
any type.

This might make a couple of places in this commit more brittle. I'm
dropping error messages, causing them to not happen in some situations.
Maybe I should just bite the bullet and require an explicit
:recipe-literal. We'll see.
Diffstat (limited to '010vm.cc')
-rw-r--r--010vm.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/010vm.cc b/010vm.cc
index 59229ad6..94fa23b7 100644
--- a/010vm.cc
+++ b/010vm.cc
@@ -248,14 +248,14 @@ reagent::reagent(string s) :original_string(s), value(0), initialized(false), ty
   name = properties.at(0).first;
   type = new_type_tree(properties.at(0).second);
   if (is_integer(name) && type == NULL) {
-    type = new type_tree(0);
     assert(!properties.at(0).second);
     properties.at(0).second = new string_tree("literal");
+    type = new type_tree(get(Type_ordinal, "literal"));
   }
   if (name == "_" && type == NULL) {
-    type = new type_tree(0);
     assert(!properties.at(0).second);
     properties.at(0).second = new string_tree("dummy");
+    type = new type_tree(get(Type_ordinal, "literal"));
   }
   // End Parsing reagent
 }