Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(602)

Unified Diff: pkg/front_end/lib/src/fasta/source/diet_listener.dart

Issue 2832353002: Add support for building patched_sdk and platform.dill for dart2js: (Closed)
Patch Set: rebase Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pkg/front_end/lib/src/fasta/source/diet_listener.dart
diff --git a/pkg/front_end/lib/src/fasta/source/diet_listener.dart b/pkg/front_end/lib/src/fasta/source/diet_listener.dart
index 750a3d838cf13b243400c8b381329a63b0dad209..f0f69848121e59ee479b7a8476e0c09e0f230449 100644
--- a/pkg/front_end/lib/src/fasta/source/diet_listener.dart
+++ b/pkg/front_end/lib/src/fasta/source/diet_listener.dart
@@ -22,8 +22,10 @@ import '../parser/parser.dart' show Parser, optional;
import '../scanner/token.dart' show BeginGroupToken, Token;
+import '../parser/dart2js_native.dart' show skipDart2jsNativeClause;
+
import '../parser/dart_vm_native.dart'
- show removeNativeClause, skipNativeClause;
+ show removeNativeClause, skipVmNativeClause;
import '../util/link.dart' show Link;
@@ -482,11 +484,13 @@ class DietListener extends StackListener {
@override
Token handleUnrecoverableError(Token token, FastaMessage message) {
if (isDartLibrary && message.code == codeExpectedBlockToSkip) {
- Token recover = skipNativeClause(token);
- if (recover != null) {
- assert(isTargetingDartVm);
- return recover;
+ Token recover;
+ if (library.loader.target.forDart2js) {
ahe 2017/04/27 13:34:34 Could be in a subclass?
Siggi Cherem (dart-lang) 2017/04/28 21:37:20 Moved this into the target instead.
+ recover = skipDart2jsNativeClause(token);
+ } else if (library.loader.target.forVm) {
+ recover = skipVmNativeClause(token);
}
+ if (recover != null) return recover;
}
return super.handleUnrecoverableError(token, message);
}
@@ -568,11 +572,6 @@ class DietListener extends StackListener {
return builder;
}
- bool get isTargetingDartVm {
- // TODO(ahe): Find a more reliable way to check if this is the Dart VM.
- return !coreTypes.containsLibrary("dart:_js_helper");
- }
-
@override
void debugEvent(String name) {
// printEvent(name);

Powered by Google App Engine
This is Rietveld 408576698