Index: pkg/kernel/lib/verifier.dart |
diff --git a/pkg/kernel/lib/verifier.dart b/pkg/kernel/lib/verifier.dart |
index 2724791c24a56d5883ef2dd5d0467675168c7a6b..b0300986832a8f599403443f85e9ca77bd33ba56 100644 |
--- a/pkg/kernel/lib/verifier.dart |
+++ b/pkg/kernel/lib/verifier.dart |
@@ -172,7 +172,18 @@ class VerifyingVisitor extends RecursiveVisitor { |
} |
} |
+ void checkCanonicalName(CanonicalName name, LinkedNode definition) { |
Kevin Millikin (Google)
2017/02/22 09:09:30
Get rid of the function? Or if we sometimes want
asgerf
2017/02/22 10:06:54
Removed the function. I did not intend to upload t
|
+ // if (name == null) { |
+ // throw '$definition has no canonical name'; |
+ // } |
+ // if (name.box.node != definition) { |
+ // throw '$definition has name $name, but that is bound to ' |
+ // '${name.box.node}'; |
+ // } |
+ } |
+ |
visitField(Field node) { |
+ checkCanonicalName(node.canonicalName, node); |
currentMember = node; |
var oldParent = enterParent(node); |
classTypeParametersAreInScope = !node.isStatic; |
@@ -184,6 +195,7 @@ class VerifyingVisitor extends RecursiveVisitor { |
} |
visitProcedure(Procedure node) { |
+ checkCanonicalName(node.canonicalName, node); |
currentMember = node; |
var oldParent = enterParent(node); |
classTypeParametersAreInScope = !node.isStatic; |
@@ -195,6 +207,7 @@ class VerifyingVisitor extends RecursiveVisitor { |
} |
visitConstructor(Constructor node) { |
+ checkCanonicalName(node.canonicalName, node); |
currentMember = node; |
classTypeParametersAreInScope = true; |
// The constructor member needs special treatment due to parameters being |
@@ -215,6 +228,7 @@ class VerifyingVisitor extends RecursiveVisitor { |
} |
visitClass(Class node) { |
+ checkCanonicalName(node.canonicalName, node); |
currentClass = node; |
declareTypeParameters(node.typeParameters); |
var oldParent = enterParent(node); |