diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2015-11-04 23:54:14 -0800 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2015-11-04 23:54:14 -0800 |
commit | 9cfd925aa408d32197cfba6ef870f3f45cc6309a (patch) | |
tree | 2ca62b36125d3b548efe1c1ac2b66f5b3f98a83a | |
parent | cc6c9e747933a0174e3b1e87886be13b49b0face (diff) | |
download | mu-9cfd925aa408d32197cfba6ef870f3f45cc6309a.tar.gz |
2362
Now we try to be smarter about checking for presence in the Type array. Still can't get generic duplex-list to work.
-rw-r--r-- | 030container.cc | 2 | ||||
-rw-r--r-- | 055parse_tree.cc | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/030container.cc b/030container.cc index 72acd48d..03af439c 100644 --- a/030container.cc +++ b/030container.cc @@ -530,7 +530,7 @@ void check_invalid_types(const recipe_ordinal r) { void check_invalid_types(const type_tree* type, const string& block, const string& name) { if (!type) return; // will throw a more precise error elsewhere // End Container Type Checks - if (type->value && Type.find(type->value) == Type.end()) { + if (type->value && (Type.find(type->value) == Type.end() || Type[type->value].name.empty())) { raise_error << block << "unknown type in " << name << '\n' << end(); } if (type->left) check_invalid_types(type->left, block, name); diff --git a/055parse_tree.cc b/055parse_tree.cc index f71b2e19..1260bf36 100644 --- a/055parse_tree.cc +++ b/055parse_tree.cc @@ -57,6 +57,7 @@ string_tree* parse_string_tree(istream& in) { } :(scenario dilated_reagent_with_type_tree) +% Hide_errors = true; // 'map' isn't defined yet recipe main [ {1: (map (address array character) (list number))} <- copy 34 ] |