Throw input error instead of parser error to avoid crashing.

R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2664333003 .
This commit is contained in:
Peter von der Ahé
2017-02-02 14:35:38 +01:00
parent 6108988ba2
commit 7be9cd0ded
4 changed files with 33 additions and 27 deletions
@@ -232,4 +232,9 @@ abstract class StackListener extends Listener {
super.handleRecoverableError(token, kind, arguments);
debugEvent("Error: ${recoverableErrors.last}");
}
@override
Token handleUnrecoverableError(Token token, ErrorKind kind, Map arguments) {
throw inputError(uri, token.charOffset, "$kind $arguments");
}
}
+13 -12
View File
@@ -15,7 +15,7 @@ rasta/bad_continue: Fail
rasta/bad_default_constructor: VerificationError
rasta/bad_explicit_super_constructor: Fail
rasta/bad_implicit_super_constructor: Fail
rasta/bad_interpolation: Crash
rasta/bad_interpolation: Fail
rasta/bad_redirection: Fail
rasta/bad_setter_initializer: Fail
rasta/bad_unicode: Fail
@@ -33,32 +33,33 @@ rasta/for_loop: Fail
rasta/generic_factory: Fail
rasta/issue_000001: Fail
rasta/issue_000031: Fail
rasta/issue_000032: Crash
rasta/issue_000032: Fail
rasta/issue_000034: Fail
rasta/issue_000035: Fail
rasta/issue_000035a: Fail
rasta/issue_000036: Crash
rasta/issue_000039: Crash
rasta/issue_000036: Fail
rasta/issue_000039: Fail
rasta/issue_000041: Fail
rasta/issue_000042: Fail
rasta/issue_000043: Fail
rasta/issue_000044: Fail
rasta/issue_000045: Crash
rasta/issue_000046: Crash
rasta/issue_000047: Crash
rasta/issue_000045: Fail
rasta/issue_000046: Fail
rasta/issue_000047: Fail
rasta/issue_000048: Crash
rasta/issue_000053: Fail
rasta/issue_000067: Fail
rasta/issue_000068: Fail
rasta/issue_000069: Fail
rasta/issue_000070: Fail
rasta/malformed_const_constructor: Crash
rasta/issue_000081: Fail
rasta/malformed_const_constructor: Fail
rasta/malformed_function: Fail
rasta/malformed_function_type: Fail
rasta/mandatory_parameter_initializer: Fail
rasta/mixin_library: Fail
rasta/native_is_illegal: Crash
rasta/parser_error: Crash
rasta/native_is_illegal: Fail
rasta/parser_error: Fail
rasta/static: VerificationError
rasta/super: Fail
rasta/super_initializer: Fail
@@ -68,10 +69,10 @@ rasta/switch_execution_case_t02: Fail
rasta/switch_fall_through: Fail
rasta/try_label: Fail
rasta/type_literals: Fail
rasta/type_with_parse_error: Crash
rasta/type_with_parse_error: Fail
rasta/typedef: Fail
rasta/unresolved: Fail
rasta/unresolved_constructor: Fail
rasta/unresolved_for_in: Fail
rasta/unresolved_recovery: Crash
rasta/unresolved_recovery: Fail
rasta/unsupported_platform_library: Fail
+9 -9
View File
@@ -28,7 +28,7 @@ rasta/bad_continue: Crash
rasta/bad_default_constructor: Crash
rasta/bad_explicit_super_constructor: Crash
rasta/bad_implicit_super_constructor: Crash
rasta/bad_interpolation: Crash
rasta/bad_interpolation: Fail
rasta/bad_redirection: Fail
rasta/bad_setter_initializer: Crash
rasta/bad_unicode: Fail
@@ -57,19 +57,19 @@ rasta/issue_000012: Crash
rasta/issue_000025: Crash
rasta/issue_000026: Crash
rasta/issue_000031: Crash
rasta/issue_000032: Crash
rasta/issue_000032: Fail
rasta/issue_000034: Crash
rasta/issue_000035: Crash
rasta/issue_000035a: Fail
rasta/issue_000036: Crash
rasta/issue_000036: Fail
rasta/issue_000039: Crash
rasta/issue_000041: Crash
rasta/issue_000042: Crash
rasta/issue_000043: Fail
rasta/issue_000044: Fail
rasta/issue_000045: Crash
rasta/issue_000046: Crash
rasta/issue_000047: Crash
rasta/issue_000045: Fail
rasta/issue_000046: Fail
rasta/issue_000047: Fail
rasta/issue_000048: Crash
rasta/issue_000052: Crash
rasta/issue_000053: Crash
@@ -79,12 +79,12 @@ rasta/issue_000069: Crash
rasta/issue_000070: Crash
rasta/issue_000080: Crash
rasta/issue_000081: Crash
rasta/malformed_const_constructor: Crash
rasta/malformed_const_constructor: Fail
rasta/malformed_function: Fail
rasta/malformed_function_type: Crash
rasta/mandatory_parameter_initializer: Fail
rasta/mixin_library: Crash
rasta/native_is_illegal: Crash
rasta/native_is_illegal: Fail
rasta/parser_error: Crash
rasta/previsit_deferred: Crash
rasta/static: Crash
@@ -98,7 +98,7 @@ rasta/switch_fall_through: Crash
rasta/this_invoke: Crash
rasta/try_label: Crash
rasta/type_literals: Crash
rasta/type_with_parse_error: Crash
rasta/type_with_parse_error: Fail
rasta/typedef: Crash
rasta/unresolved: Crash
rasta/unresolved_constructor: Crash
+6 -6
View File
@@ -6,20 +6,20 @@ rasta/bad_redirection: Fail
rasta/class_hierarchy: Crash
rasta/generic_factory: Fail
rasta/issue_000002: Fail
rasta/issue_000032: Crash
rasta/issue_000032: Fail
rasta/issue_000044: Fail
rasta/issue_000045: Crash
rasta/issue_000046: Crash
rasta/issue_000047: Crash
rasta/issue_000045: Fail
rasta/issue_000046: Fail
rasta/issue_000047: Fail
rasta/issue_000048: Crash
rasta/issue_000067: Fail
rasta/issue_000068: Fail
rasta/issue_000070: Fail
rasta/mandatory_parameter_initializer: Fail
rasta/mixin_library: Fail
rasta/native_is_illegal: Crash
rasta/native_is_illegal: Fail
rasta/super: Fail
rasta/super_mixin: Crash
rasta/super_operator: Fail
rasta/type_literals: Fail
rasta/type_with_parse_error: Crash
rasta/type_with_parse_error: Fail