about summary refs log tree commit diff stats
path: root/036call_reply.cc
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2015-07-08 11:43:59 -0700
committerKartik K. Agaram <vc@akkartik.com>2015-07-08 12:50:07 -0700
commit260c3de2bfad49c0587547b8af1be5bc3e2dacd5 (patch)
tree2b80d1217be2dc5af051194d7f91a2a3d444b0ee /036call_reply.cc
parenta2372bee56a110e7dfd83c3b52f430c75b2cf0e7 (diff)
downloadmu-260c3de2bfad49c0587547b8af1be5bc3e2dacd5.tar.gz
1721 - hide warnings inside interactive routines
We will need many other forms of isolation for these. For starters we're
going to have to replace most asserts with warnings that can be traced
so that the environment doesn't crash because of illegal code typed into
it.

New test is still failing. Just getting it to fail right was hard
enough.
Diffstat (limited to '036call_reply.cc')
-rw-r--r--036call_reply.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/036call_reply.cc b/036call_reply.cc
index 0bc46323..d09763fe 100644
--- a/036call_reply.cc
+++ b/036call_reply.cc
@@ -20,6 +20,10 @@ Recipe_ordinal["reply"] = REPLY;
 case REPLY: {
   const instruction& reply_inst = current_instruction();  // save pointer into recipe before pop
   const string& callee = current_recipe_name();
+  if (callee == "interactive") {
+    trace("foo") << "showing warnings again";
+    Hide_warnings = true;
+  }
   --Callstack_depth;
 //?   if (tb_is_active()) { //? 1
 //?     tb_clear(); //? 1
@@ -44,8 +48,6 @@ case REPLY: {
         raise << current_recipe_name() << ": 'same-as-ingredient' result " << caller_instruction.products.at(i).value << " from call to " << callee << " must be location " << caller_instruction.ingredients.at(ingredient_index).value << '\n';
     }
   }
-  if (current_recipe_name() == "interactive") {
-  }
   break;  // continue to process rest of *caller* instruction
 }