Index: pkg/front_end/lib/src/fasta/fasta.dart |
diff --git a/pkg/front_end/lib/src/fasta/fasta.dart b/pkg/front_end/lib/src/fasta/fasta.dart |
index ccc2196bba61bc756994dd4b1a9e20b4eed8a1de..d044beb24e773ca3bacb74230415071775be7133 100644 |
--- a/pkg/front_end/lib/src/fasta/fasta.dart |
+++ b/pkg/front_end/lib/src/fasta/fasta.dart |
@@ -111,15 +111,16 @@ class CompileTask { |
KernelTarget createKernelTarget( |
DillTarget dillTarget, TranslateUri uriTranslator, bool strongMode) { |
- return new KernelTarget( |
- dillTarget, uriTranslator, strongMode, c.uriToSource); |
+ return new KernelTarget(dillTarget, uriTranslator, strongMode, |
+ c.options.targetDart2js, c.uriToSource); |
} |
Future<KernelTarget> buildOutline([Uri output]) async { |
TranslateUri uriTranslator = |
await TranslateUri.parse(c.options.sdk, c.options.packages); |
ticker.logMs("Read packages file"); |
- DillTarget dillTarget = new DillTarget(ticker, uriTranslator); |
+ DillTarget dillTarget = |
+ new DillTarget(ticker, uriTranslator, c.options.targetDart2js); |
KernelTarget kernelTarget = |
createKernelTarget(dillTarget, uriTranslator, c.options.strongMode); |
if (c.options.strongMode) { |
@@ -174,10 +175,11 @@ Future<CompilationResult> parseScript( |
try { |
TranslateUri uriTranslator = await TranslateUri.parse(null, packages); |
final Ticker ticker = new Ticker(isVerbose: verbose); |
- final DillTarget dillTarget = new DillTarget(ticker, uriTranslator); |
+ final DillTarget dillTarget = |
+ new DillTarget(ticker, uriTranslator, false); |
dillTarget.read(patchedSdk.resolve('platform.dill')); |
final KernelTarget kernelTarget = |
- new KernelTarget(dillTarget, uriTranslator, strongMode); |
+ new KernelTarget(dillTarget, uriTranslator, strongMode, false); |
kernelTarget.read(fileName); |
await dillTarget.writeOutline(null); |
program = await kernelTarget.writeOutline(null); |
@@ -209,13 +211,16 @@ Future<CompilationResult> parseScript( |
} |
Future compilePlatform(Uri patchedSdk, Uri output, |
- {Uri packages, bool verbose: false}) async { |
+ {Uri packages, bool verbose: false, bool targetDart2js: false}) async { |
Ticker ticker = new Ticker(isVerbose: verbose); |
await CompilerCommandLine.withGlobalOptions("", [""], (CompilerContext c) { |
c.options.options["--packages"] = packages; |
if (verbose) { |
c.options.options["--verbose"] = true; |
} |
+ if (targetDart2js) { |
+ c.options.options["--target"] = "dart2js"; |
+ } |
return compilePlatformInternal(c, ticker, patchedSdk, output); |
}); |
} |
@@ -224,7 +229,8 @@ Future writeDepsFile(Uri script, Uri depsFile, Uri output, |
{Uri packages, |
Uri platform, |
Iterable<Uri> extraDependencies, |
- bool verbose: false}) async { |
+ bool verbose: false, |
+ bool targetDart2js: false}) async { |
Ticker ticker = new Ticker(isVerbose: verbose); |
await CompilerCommandLine.withGlobalOptions("", [""], |
(CompilerContext c) async { |
@@ -232,14 +238,17 @@ Future writeDepsFile(Uri script, Uri depsFile, Uri output, |
if (verbose) { |
c.options.options["--verbose"] = true; |
} |
+ if (targetDart2js) { |
+ c.options.options["--target"] = "dart2js"; |
+ } |
TranslateUri uriTranslator = |
await TranslateUri.parse(c.options.sdk, c.options.packages); |
ticker.logMs("Read packages file"); |
- DillTarget dillTarget = new DillTarget(ticker, uriTranslator) |
+ DillTarget dillTarget = new DillTarget(ticker, uriTranslator, targetDart2js) |
..read(platform); |
- KernelTarget kernelTarget = |
- new KernelTarget(dillTarget, uriTranslator, false, c.uriToSource); |
+ KernelTarget kernelTarget = new KernelTarget( |
+ dillTarget, uriTranslator, false, targetDart2js, c.uriToSource); |
kernelTarget.read(script); |
await dillTarget.writeOutline(null); |