diff options
author | akashlal <unknown> | 2010-09-18 14:45:36 +0000 |
---|---|---|
committer | akashlal <unknown> | 2010-09-18 14:45:36 +0000 |
commit | 23bd0ad65b0b2a8bcea687e7b12047a6005d3889 (patch) | |
tree | 6b048fd5f51d532cf067b834e68d6e505bab757b | |
parent | dbc59dc5f6dd703720df9815ed83158a351417fe (diff) |
Fixed an off-by-one error. Added "ReachedBound" as a valid boogie outcome.
-rw-r--r-- | Source/BoogieDriver/BoogieDriver.cs | 5 | ||||
-rw-r--r-- | Source/VCGeneration/VC.cs | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/Source/BoogieDriver/BoogieDriver.cs b/Source/BoogieDriver/BoogieDriver.cs index a4635f49..a0005263 100644 --- a/Source/BoogieDriver/BoogieDriver.cs +++ b/Source/BoogieDriver/BoogieDriver.cs @@ -617,6 +617,11 @@ namespace Microsoft.Boogie { default:
Contract.Assert(false); // unexpected outcome
throw new cce.UnreachableException();
+ case VCGen.Outcome.ReachedBound:
+ Inform(String.Format("{0}verified", timeIndication));
+ Console.WriteLine(string.Format("Stratified Inlining: Reached recursion bound of {0}", CommandLineOptions.Clo.RecursionBound));
+ verified++;
+ break;
case VCGen.Outcome.Correct:
if (CommandLineOptions.Clo.vcVariety == CommandLineOptions.VCVariety.Doomed) {
Inform(String.Format("{0}credible", timeIndication));
diff --git a/Source/VCGeneration/VC.cs b/Source/VCGeneration/VC.cs index 31bcef54..775a04cc 100644 --- a/Source/VCGeneration/VC.cs +++ b/Source/VCGeneration/VC.cs @@ -2636,7 +2636,7 @@ namespace VC { // recursed on proc(id)
public int getRecursionBound(int id)
{
- int ret = 1;
+ int ret = 0;
var str = getProc(id);
while (candidateParent.ContainsKey(id))
{
|