diff options
author | wuestholz <unknown> | 2011-12-02 10:58:47 +0100 |
---|---|---|
committer | wuestholz <unknown> | 2011-12-02 10:58:47 +0100 |
commit | a16ac98f4aa7657d999753e299e32613e10f1c5d (patch) | |
tree | daf540ec9cca24386a3c3dc8131ddb10dd4236ff /Source/VCGeneration/VC.cs | |
parent | 34112b0b3da6642b5b18ce2dd53d6b6d57cc214f (diff) |
Boogie: Fixed a crash due to old expressions in lambda expressions that were not replaced after lambda expansion.
(reported by Florian Egli)
Diffstat (limited to 'Source/VCGeneration/VC.cs')
-rw-r--r-- | Source/VCGeneration/VC.cs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Source/VCGeneration/VC.cs b/Source/VCGeneration/VC.cs index 486f940f..36b9edc2 100644 --- a/Source/VCGeneration/VC.cs +++ b/Source/VCGeneration/VC.cs @@ -2388,6 +2388,10 @@ namespace VC { Block entryBlock = cce.NonNull( impl.Blocks[0]);
cmds.AddRange(entryBlock.Cmds);
entryBlock.Cmds = cmds;
+ // Make sure that all added commands are passive commands.
+ Hashtable incarnationMap = ComputeIncarnationMap(entryBlock, new Hashtable());
+ TurnIntoPassiveBlock(entryBlock, incarnationMap, mvInfo,
+ ComputeOldExpressionSubstitution(impl.Proc.Modifies));
}
}
|