summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar MichalMoskal <unknown>2009-11-20 00:20:25 +0000
committerGravatar MichalMoskal <unknown>2009-11-20 00:20:25 +0000
commit97c46034da2f75ee0ee081ab2782260ac27ea04f (patch)
treed9b3d6d4878139ad467e9962160174c2bffcdf7e
parent8a3d35545386c74864db0662faa5c1d68cd71f01 (diff)
Support {:PossiblyUnreachable} attribute on asserts
-rw-r--r--Source/VCGeneration/VC.ssc8
1 files changed, 7 insertions, 1 deletions
diff --git a/Source/VCGeneration/VC.ssc b/Source/VCGeneration/VC.ssc
index 6e5b147b..7a3a772c 100644
--- a/Source/VCGeneration/VC.ssc
+++ b/Source/VCGeneration/VC.ssc
@@ -242,7 +242,13 @@ namespace VC
bool CheckUnreachable(Block! cur, CmdSeq! seq)
throws UnexpectedProverOutputException;
- {
+ {
+ foreach (Cmd cmd in seq) {
+ AssertCmd assrt = cmd as AssertCmd;
+ if (assrt != null && QKeyValue.FindBoolAttribute(assrt.Attributes, "PossiblyUnreachable"))
+ return false;
+ }
+
DateTime start = DateTime.Now;
if (CommandLineOptions.Clo.Trace) {
System.Console.Write(" soundness smoke test #{0} ... ", id);