fix for hiding prompt/header in shell, error-behavior options as in SMTLIB
authorKshitij Bansal <kshitij@cs.nyu.edu>
Sun, 6 Apr 2014 10:25:08 +0000 (06:25 -0400)
committerKshitij Bansal <kshitij@cs.nyu.edu>
Sun, 6 Apr 2014 10:56:54 +0000 (06:56 -0400)
src/main/driver_unified.cpp
src/main/interactive_shell.cpp
src/main/options

index adc40a9d136f5bb6862111ac0d29412d91fe5f3c..c2b879a6b6868082156fdfc78d8d272d37a72e05 100644 (file)
@@ -246,17 +246,19 @@ int runCvc4(int argc, char* argv[], Options& opts) {
       }
 #endif /* PORTFOLIO_BUILD */
       InteractiveShell shell(*exprMgr, opts);
-      Message() << Configuration::getPackageName()
-                << " " << Configuration::getVersionString();
-      if(Configuration::isGitBuild()) {
-        Message() << " [" << Configuration::getGitId() << "]";
-      } else if(Configuration::isSubversionBuild()) {
-        Message() << " [" << Configuration::getSubversionId() << "]";
+      if(opts[options::interactivePrompt]) {
+        Message() << Configuration::getPackageName()
+                  << " " << Configuration::getVersionString();
+        if(Configuration::isGitBuild()) {
+          Message() << " [" << Configuration::getGitId() << "]";
+        } else if(Configuration::isSubversionBuild()) {
+          Message() << " [" << Configuration::getSubversionId() << "]";
+        }
+        Message() << (Configuration::isDebugBuild() ? " DEBUG" : "")
+                  << " assertions:"
+                  << (Configuration::isAssertionBuild() ? "on" : "off")
+                  << endl;
       }
-      Message() << (Configuration::isDebugBuild() ? " DEBUG" : "")
-                << " assertions:"
-                << (Configuration::isAssertionBuild() ? "on" : "off")
-                << endl;
       if(replayParser != NULL) {
         // have the replay parser use the declarations input interactively
         replayParser->useDeclarationsFrom(shell.getParser());
index 63a60c7a2d1ca012d45f42feeb68572b8f5f71be..90229861fc27c67c7a9235664231c8f609e766b4 100644 (file)
@@ -192,7 +192,7 @@ restart:
     free(lineBuf);
 #endif /* HAVE_LIBREADLINE */
   } else {
-    if(d_options[options::verbosity] >= 0) {
+    if(d_options[options::interactivePrompt]) {
       if(line == "") {
         d_out << "CVC4> " << flush;
       } else {
@@ -260,7 +260,7 @@ restart:
       input[n] = '\n';
       if(d_usingReadline) {
 #if HAVE_LIBREADLINE
-        lineBuf = ::readline(d_options[options::verbosity] >= 0 ? "... > " : "");
+        lineBuf = ::readline(d_options[options::interactivePrompt] ? "... > " : "");
         if(lineBuf != NULL && lineBuf[0] != '\0') {
           ::add_history(lineBuf);
         }
@@ -268,7 +268,7 @@ restart:
         free(lineBuf);
 #endif /* HAVE_LIBREADLINE */
       } else {
-        if(d_options[options::verbosity] >= 0) {
+        if(d_options[options::interactivePrompt]) {
           d_out << "... > " << flush;
         }
 
index 09b06bd07bbd281d81fc71b1b402ec74fd0270e7..d844828365be2a771694f84164044835924efda6 100644 (file)
@@ -39,9 +39,13 @@ option fallbackSequential  --fallback-sequential bool :default false
 option incrementalParallel --incremental-parallel bool :default false :link --incremental
  Use parallel solver even in incremental mode (may print 'unknown's at times)
 
-option interactivePrompt /--no-interactive-prompt bool :default true
+undocumented-option interactivePrompt /--no-interactive-prompt bool :default true
  turn off interactive prompting while in interactive mode
 
+# error behaviors
+option continuedExecution --continued-execution/--immediate-exit bool :default false :link "--interactive --no-interactive-prompt"/
+ continue executing commands, even on error
+
 option segvSpin --segv-spin bool :default false
  spin on segfault/other crash waiting for gdb
 undocumented-alias --segv-nospin = --no-segv-spin