summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorGravatar qunyanm <qunyanm@hotmail.com>2016-01-19 11:08:28 -0800
committerGravatar qunyanm <qunyanm@hotmail.com>2016-01-19 11:08:28 -0800
commit83f675b0b0124872cc343ba0f14984803ee6eb18 (patch)
tree69ee94ee4afdd85a937a465efb706929c3657de2 /Source
parentf75e5ba707885666ead81d7c5ec1653e7a09f3ff (diff)
Bug fix in determining whether a type parameter is bounded
When checking whether a type parameter could be determined from the bound variable types, we mistakenly compare equality between a TypeVarable and a VCExprVar, instead of between two VCExprVars.
Diffstat (limited to 'Source')
-rw-r--r--Source/VCExpr/TypeErasurePremisses.cs2
1 files changed, 1 insertions, 1 deletions
diff --git a/Source/VCExpr/TypeErasurePremisses.cs b/Source/VCExpr/TypeErasurePremisses.cs
index 6077f327..dc9ad10f 100644
--- a/Source/VCExpr/TypeErasurePremisses.cs
+++ b/Source/VCExpr/TypeErasurePremisses.cs
@@ -1115,7 +1115,7 @@ namespace Microsoft.Boogie.TypeErasure
if (typeVarBindings.Count < node.TypeParameters.Count) {
foreach (TypeVariable/*!*/ var in node.TypeParameters) {
Contract.Assert(var != null);
- if (typeVarBindings.All(b => !b.V.Equals(var)))
+ if (typeVarBindings.All(b => !b.V.Equals(bindings.TypeVariableBindings[var])))
newBoundVars.Add((VCExprVar)bindings.TypeVariableBindings[var]);
}
}