summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Unknown <t-alasdo@MSR-RISE-GUEST.redmond.corp.microsoft.com>2011-09-14 09:29:46 -0700
committerGravatar Unknown <t-alasdo@MSR-RISE-GUEST.redmond.corp.microsoft.com>2011-09-14 09:29:46 -0700
commit2658e2f562cfd1915bd6365509d2c5d078f3ba5f (patch)
tree3fdbf5589fd049b87efd43a56a7b75884a3aa7d0
parent60c1c16a4c54d2cf84a512ff293fae15af4f89ab (diff)
parent558a9ce363846c80f14a5f2fb1f97ad2355e102a (diff)
Merge
-rw-r--r--Source/VCGeneration/StratifiedVC.cs12
1 files changed, 7 insertions, 5 deletions
diff --git a/Source/VCGeneration/StratifiedVC.cs b/Source/VCGeneration/StratifiedVC.cs
index 243eb8e0..4533363f 100644
--- a/Source/VCGeneration/StratifiedVC.cs
+++ b/Source/VCGeneration/StratifiedVC.cs
@@ -2894,12 +2894,14 @@ namespace VC
else {
if (candidateId != 0) {
Dictionary<VCExprVar, VCExpr> mapping = calls.id2Vars[candidateId];
- VCExpr e = mapping[vvar];
- if (e is VCExprLiteral) {
- VCExprLiteral lit = (VCExprLiteral)e;
- return m.MkElement(lit.ToString());
+ if (mapping.ContainsKey(vvar)) {
+ VCExpr e = mapping[vvar];
+ if (e is VCExprLiteral) {
+ VCExprLiteral lit = (VCExprLiteral)e;
+ return m.MkElement(lit.ToString());
+ }
+ vvar = (VCExprVar)mapping[vvar];
}
- vvar = (VCExprVar) mapping[vvar];
}
uniqueName = context.Lookup(vvar);
}