summaryrefslogtreecommitdiff
path: root/Source/Core/CommandLineOptions.cs
diff options
context:
space:
mode:
authorGravatar Jason Koenig <unknown>2011-07-01 12:00:02 -0700
committerGravatar Jason Koenig <unknown>2011-07-01 12:00:02 -0700
commite24f7cd3b0c28a7ae965032ad98ba1de60e5eba9 (patch)
tree2cf4f8e2abf38b278cead01230c336c77503ed7f /Source/Core/CommandLineOptions.cs
parentb96a31295e5eb0d155cce20cb1d4cb487ecf7fb5 (diff)
Added the /noCheating option. (treats assume as assert and drops free.)
Diffstat (limited to 'Source/Core/CommandLineOptions.cs')
-rw-r--r--Source/Core/CommandLineOptions.cs12
1 files changed, 12 insertions, 0 deletions
diff --git a/Source/Core/CommandLineOptions.cs b/Source/Core/CommandLineOptions.cs
index 22264c8f..7c26943e 100644
--- a/Source/Core/CommandLineOptions.cs
+++ b/Source/Core/CommandLineOptions.cs
@@ -136,6 +136,7 @@ namespace Microsoft.Boogie {
public bool NoTypecheck = false;
public bool OverlookBoogieTypeErrors = false;
public bool Verify = true;
+ public bool DisallowSoundnessCheating = false;
public bool TraceVerify = false;
public int /*(0:3)*/ ErrorTrace = 1;
public bool IntraproceduralInfer = true;
@@ -720,6 +721,15 @@ namespace Microsoft.Boogie {
break;
}
+ case "-noCheating":
+ case "/noCheating": {
+ int cheat = 0; // 0 is default, allows cheating
+ if (ps.GetNumericArgument(ref cheat, 2)) {
+ DisallowSoundnessCheating = cheat == 1;
+ }
+ break;
+ }
+
case "-contracts":
case "/contracts":
case "-c":
@@ -2101,6 +2111,8 @@ namespace Microsoft.Boogie {
program, compile Dafny program to C# program out.cs
2 - always attempt to compile Dafny program to C# program
out.cs, regardless of verification outcome
+ /noCheating:<n> : 0 (default) - allow assume statements and free invariants
+ 1 - treat all assumptions as asserts, and drop free.
---- Boogie options --------------------------------------------------------