summaryrefslogtreecommitdiff
path: root/Source/Concurrency/YieldTypeChecker.cs
diff options
context:
space:
mode:
authorGravatar qadeer <unknown>2014-01-08 22:10:54 -0800
committerGravatar qadeer <unknown>2014-01-08 22:10:54 -0800
commita0da62d4eba25d38b35445378a9cfd7dafed25ba (patch)
tree4d391f17458e1422970fd18b9f81f3e9571426b7 /Source/Concurrency/YieldTypeChecker.cs
parent6c4edf3e7aea971d002d2e4e472a08ffc62a3eb2 (diff)
a fix regarding the checking of assertions in atomic specs at call sites
Diffstat (limited to 'Source/Concurrency/YieldTypeChecker.cs')
-rw-r--r--Source/Concurrency/YieldTypeChecker.cs21
1 files changed, 1 insertions, 20 deletions
diff --git a/Source/Concurrency/YieldTypeChecker.cs b/Source/Concurrency/YieldTypeChecker.cs
index 24e5f437..713d7068 100644
--- a/Source/Concurrency/YieldTypeChecker.cs
+++ b/Source/Concurrency/YieldTypeChecker.cs
@@ -94,24 +94,6 @@ namespace Microsoft.Boogie
#endif
}
- private static HashSet<int> ComputePhaseIntervals(MoverTypeChecker moverTypeChecker)
- {
- HashSet<int> phases = new HashSet<int>();
- foreach (var decl in moverTypeChecker.program.TopLevelDeclarations)
- {
- Procedure proc = decl as Procedure;
- if (proc == null) continue;
- int phaseNum = moverTypeChecker.FindPhaseNumber(proc);
- if (phaseNum != int.MaxValue) phases.Add(moverTypeChecker.FindPhaseNumber(proc));
-
- }
- foreach (int phs in moverTypeChecker.assertionPhaseNums)
- {
- phases.Add(phs);
- }
- return phases;
- }
-
private static Tuple<Automaton<BvSet>, bool> IsYieldReachabilitySafe(Automaton<BvSet> implReachabilityCheckAutomaton, Implementation impl, MoverTypeChecker moverTypeChecker, int phaseNum)
{
List<BvSet> witnessSet;
@@ -187,10 +169,9 @@ namespace Microsoft.Boogie
Program yieldTypeCheckedProgram = moverTypeChecker.program;
YieldTypeChecker regExprToAuto = new YieldTypeChecker();
- HashSet<int> phases = ComputePhaseIntervals(moverTypeChecker);
YieldTypeCheckerCore yieldTypeCheckerPerImpl = new YieldTypeCheckerCore(moverTypeChecker);
- foreach (int yTypeCheckCurrentPhaseNum in phases) // take current phase check num from each interval
+ foreach (int yTypeCheckCurrentPhaseNum in moverTypeChecker.allPhaseNums) // take current phase check num from each interval
{
foreach (var decl in yieldTypeCheckedProgram.TopLevelDeclarations)
{