()
| 119065 | return configFileNode && ts.createDiagnosticForNodeInSourceFile(options.configFile, configFileNode, message); |
| 119066 | } |
| 119067 | function verifyProjectReferences() { |
| 119068 | var buildInfoPath = !options.suppressOutputPathCheck ? ts.getTsBuildInfoEmitOutputFilePath(options) : undefined; |
| 119069 | forEachProjectReference(projectReferences, resolvedProjectReferences, function (resolvedRef, parent, index) { |
| 119070 | var ref = (parent ? parent.commandLine.projectReferences : projectReferences)[index]; |
| 119071 | var parentFile = parent && parent.sourceFile; |
| 119072 | if (!resolvedRef) { |
| 119073 | createDiagnosticForReference(parentFile, index, ts.Diagnostics.File_0_not_found, ref.path); |
| 119074 | return; |
| 119075 | } |
| 119076 | var options = resolvedRef.commandLine.options; |
| 119077 | if (!options.composite || options.noEmit) { |
| 119078 | // ok to not have composite if the current program is container only |
| 119079 | var inputs = parent ? parent.commandLine.fileNames : rootNames; |
| 119080 | if (inputs.length) { |
| 119081 | if (!options.composite) |
| 119082 | createDiagnosticForReference(parentFile, index, ts.Diagnostics.Referenced_project_0_must_have_setting_composite_Colon_true, ref.path); |
| 119083 | if (options.noEmit) |
| 119084 | createDiagnosticForReference(parentFile, index, ts.Diagnostics.Referenced_project_0_may_not_disable_emit, ref.path); |
| 119085 | } |
| 119086 | } |
| 119087 | if (ref.prepend) { |
| 119088 | var out = ts.outFile(options); |
| 119089 | if (out) { |
| 119090 | if (!host.fileExists(out)) { |
| 119091 | createDiagnosticForReference(parentFile, index, ts.Diagnostics.Output_file_0_from_project_1_does_not_exist, out, ref.path); |
| 119092 | } |
| 119093 | } |
| 119094 | else { |
| 119095 | createDiagnosticForReference(parentFile, index, ts.Diagnostics.Cannot_prepend_project_0_because_it_does_not_have_outFile_set, ref.path); |
| 119096 | } |
| 119097 | } |
| 119098 | if (!parent && buildInfoPath && buildInfoPath === ts.getTsBuildInfoEmitOutputFilePath(options)) { |
| 119099 | createDiagnosticForReference(parentFile, index, ts.Diagnostics.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1, buildInfoPath, ref.path); |
| 119100 | hasEmitBlockingDiagnostics.set(toPath(buildInfoPath), true); |
| 119101 | } |
| 119102 | }); |
| 119103 | } |
| 119104 | function createDiagnosticForOptionPathKeyValue(key, valueIndex, message, arg0, arg1, arg2) { |
| 119105 | var needCompilerDiagnostic = true; |
| 119106 | var pathsSyntax = getOptionPathsSyntax(); |
no test coverage detected
searching dependent graphs…