JS backend: pass diagnostics to TranslationContext using config

This commit is contained in:
Alexey Tsvetkov
2014-11-27 17:06:57 +03:00
parent 5530ad84e5
commit 3658698f4f
3 changed files with 30 additions and 1 deletions
@@ -50,6 +50,7 @@ import org.jetbrains.jet.cli.jvm.compiler.JetCoreEnvironment;
import org.jetbrains.jet.config.CompilerConfiguration;
import org.jetbrains.jet.config.Services;
import org.jetbrains.jet.lang.psi.JetFile;
import org.jetbrains.jet.lang.resolve.*;
import org.jetbrains.jet.utils.PathUtil;
import org.jetbrains.k2js.analyze.TopDownAnalyzerFacadeForJS;
import org.jetbrains.k2js.config.*;
@@ -148,9 +149,15 @@ public class K2JSCompiler extends CLICompiler<K2JSCompilerArguments> {
}
MainCallParameters mainCallParameters = createMainCallParameters(arguments.main);
BindingTraceContext trace = new BindingTraceContext();
config.setTrace(trace);
OutputFileCollection outputFiles = translate(mainCallParameters, config, sourcesFiles, outputFile, outputPrefixFile, outputPostfixFile);
Diagnostics diagnostics = trace.getBindingContext().getDiagnostics();
if (AnalyzerWithCompilerReport.reportDiagnostics(diagnostics, messageCollector)) {
return ExitCode.COMPILATION_ERROR;
}
if (outputFile.isDirectory()) {
messageCollector.report(CompilerMessageSeverity.ERROR,
"Cannot open output file '" + outputFile.getPath() + "': is a directory",