| Index: pkg/kernel/lib/verifier.dart
|
| diff --git a/pkg/kernel/lib/verifier.dart b/pkg/kernel/lib/verifier.dart
|
| index b3675b319d863850883aad32df81f8808a38204b..5de5288050a1f34662a64a0b0d64b456eb98626d 100644
|
| --- a/pkg/kernel/lib/verifier.dart
|
| +++ b/pkg/kernel/lib/verifier.dart
|
| @@ -31,7 +31,9 @@ class VerificationError {
|
| return "$file:${location.line}:${location.column}: Verification error:"
|
| " $details";
|
| } else {
|
| - return "Verification error: $details\nContext: '$context'.\nNode: '$node'.";
|
| + return "Verification error: $details\n"
|
| + "Context: '$context'.\n"
|
| + "Node: '$node'.";
|
| }
|
| }
|
| }
|
| @@ -430,6 +432,21 @@ class VerifyingVisitor extends RecursiveVisitor {
|
| }
|
|
|
| @override
|
| + visitContinueSwitchStatement(ContinueSwitchStatement node) {
|
| + if (node.target == null) {
|
| + problem(node, "No target.");
|
| + } else if (node.target.parent == null) {
|
| + problem(node, "Target has no parent.");
|
| + } else {
|
| + SwitchStatement statement = node.target.parent;
|
| + for (SwitchCase switchCase in statement.cases) {
|
| + if (switchCase == node.target) return;
|
| + }
|
| + problem(node, "Switch case isn't child of parent.");
|
| + }
|
| + }
|
| +
|
| + @override
|
| defaultMemberReference(Member node) {
|
| if (node.transformerFlags & TransformerFlag.seenByVerifier == 0) {
|
| problem(
|
|
|