summaryrefslogtreecommitdiff
path: root/Source/Houdini
diff options
context:
space:
mode:
authorGravatar qadeer <qadeer@microsoft.com>2011-09-30 15:02:27 -0700
committerGravatar qadeer <qadeer@microsoft.com>2011-09-30 15:02:27 -0700
commit4a39e65198a98e148403e59473cede4895c7d2e7 (patch)
treeb91755ec92c4a2581eb80be59a6defe32ee06cac /Source/Houdini
parent6c8499199620f978003f186efd872e71177628f8 (diff)
bug fix in houdini
also fixed runtest.bat and Answer
Diffstat (limited to 'Source/Houdini')
-rw-r--r--Source/Houdini/Houdini.cs11
1 files changed, 5 insertions, 6 deletions
diff --git a/Source/Houdini/Houdini.cs b/Source/Houdini/Houdini.cs
index 1b03c507..79c6fb77 100644
--- a/Source/Houdini/Houdini.cs
+++ b/Source/Houdini/Houdini.cs
@@ -268,7 +268,7 @@ namespace Microsoft.Boogie.Houdini {
Dictionary<Implementation, HoudiniVCGen> vcgenSessions = new Dictionary<Implementation, HoudiniVCGen>();
foreach (Declaration decl in program.TopLevelDeclarations) {
Implementation impl = decl as Implementation;
- if (impl != null) {
+ if (impl != null && !impl.SkipVerification) {
impls.Add(impl);
}
}
@@ -309,13 +309,13 @@ namespace Microsoft.Boogie.Houdini {
}
foreach (Declaration decl in program.TopLevelDeclarations) {
Implementation impl = decl as Implementation;
- if (impl == null) continue;
+ if (impl == null || impl.SkipVerification) continue;
callGraph.AddSource(impl);
procToImpls[impl.Proc].Add(impl);
}
foreach (Declaration decl in program.TopLevelDeclarations) {
Implementation impl = decl as Implementation;
- if (impl == null) continue;
+ if (impl == null || impl.SkipVerification) continue;
foreach (Block b in impl.Blocks) {
foreach (Cmd c in b.Cmds) {
CallCmd cc = c as CallCmd;
@@ -333,9 +333,8 @@ namespace Microsoft.Boogie.Houdini {
Queue<Implementation> queue = new Queue<Implementation>();
foreach (Declaration decl in program.TopLevelDeclarations) {
Implementation impl = decl as Implementation;
- if (impl != null && CommandLineOptions.Clo.UserWantsToCheckRoutine(cce.NonNull(impl.Name)) && !impl.SkipVerification) {
- queue.Enqueue(impl);
- }
+ if (impl == null || impl.SkipVerification) continue;
+ queue.Enqueue(impl);
}
return queue;
}