about summary refs log tree commit diff stats
path: root/020run.cc
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2015-07-28 19:33:19 -0700
committerKartik K. Agaram <vc@akkartik.com>2015-07-28 19:34:58 -0700
commitc91caafd5bd5dae25b0e0efa19879258ff61ad93 (patch)
tree3f236b1ceefbb92fe4ca1684e45e89c143781571 /020run.cc
parentdad1cb27f129a7f23556f76c649fef45f427b18f (diff)
downloadmu-c91caafd5bd5dae25b0e0efa19879258ff61ad93.tar.gz
1879 - types required at first mention of a name
That should avoid many issues with typos in names.
Diffstat (limited to '020run.cc')
-rw-r--r--020run.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/020run.cc b/020run.cc
index 81eeb14d..be144858 100644
--- a/020run.cc
+++ b/020run.cc
@@ -212,7 +212,7 @@ void write_memory(reagent x, vector<double> data) {
   if (is_literal(x)) return;
   long long int base = x.value;
   if (size_mismatch(x, data)) {
-    raise << current_recipe_name() << ": size mismatch in storing to " << x.to_string() << " at " << current_instruction().to_string() << '\n' << end();
+    raise << current_recipe_name() << ": size mismatch in storing to " << x.original_string << " at '" << current_instruction().to_string() << "'\n" << end();
     return;
   }
   for (long long int offset = 0; offset < SIZE(data); ++offset) {
@@ -234,6 +234,8 @@ long long int size_of(const vector<type_ordinal>& types) {
 }
 
 bool size_mismatch(const reagent& x, const vector<double>& data) {
+  if (x.types.empty()) return true;
+  // End size_mismatch(x) Cases
 //?   if (size_of(x) != SIZE(data)) cerr << size_of(x) << " vs " << SIZE(data) << '\n'; //? 2
   return size_of(x) != SIZE(data);
 }