Skip to content

Commit d7390ec

Browse files
author
Yui T
committed
Merge branch 'reportErrorFromTargetFile' into release-1.3
2 parents 6bc3ed8 + 33c91ff commit d7390ec

File tree

5 files changed

+2790
-2737
lines changed

5 files changed

+2790
-2737
lines changed

src/compiler/checker.ts

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ module ts {
7171
var checker: TypeChecker = {
7272
getProgram: () => program,
7373
getDiagnostics: getDiagnostics,
74+
getDeclarationDiagnostics: getDeclarationDiagnostics,
7475
getGlobalDiagnostics: getGlobalDiagnostics,
7576
getNodeCount: () => sum(program.getSourceFiles(), "nodeCount"),
7677
getIdentifierCount: () => sum(program.getSourceFiles(), "identifierCount"),
@@ -930,7 +931,7 @@ module ts {
930931
}
931932
}
932933

933-
function isImportDeclarationEntityNameReferenceDeclarationVisibile(entityName: EntityName): SymbolAccessiblityResult {
934+
function isImportDeclarationEntityNameReferenceDeclarationVisible(entityName: EntityName): SymbolAccessiblityResult {
934935
var firstIdentifier = getFirstIdentifier(entityName);
935936
var firstIdentifierName = identifierToString(<Identifier>firstIdentifier);
936937
var symbolOfNameSpace = resolveName(entityName.parent, (<Identifier>firstIdentifier).text, SymbolFlags.Namespace, Diagnostics.Cannot_find_name_0, firstIdentifierName);
@@ -7048,6 +7049,12 @@ module ts {
70487049
return getSortedDiagnostics();
70497050
}
70507051

7052+
function getDeclarationDiagnostics(targetSourceFile: SourceFile): Diagnostic[] {
7053+
var resolver = createResolver();
7054+
checkSourceFile(targetSourceFile);
7055+
return ts.getDeclarationDiagnostics(program, resolver, targetSourceFile);
7056+
}
7057+
70517058
function getGlobalDiagnostics(): Diagnostic[] {
70527059
return filter(getSortedDiagnostics(), d => !d.file);
70537060
}
@@ -7689,8 +7696,8 @@ module ts {
76897696
writeType(getReturnTypeOfSignature(signature), writer, enclosingDeclaration, flags);
76907697
}
76917698

7692-
function invokeEmitter(targetSourceFile?: SourceFile) {
7693-
var resolver: EmitResolver = {
7699+
function createResolver(): EmitResolver {
7700+
return {
76947701
getProgram: () => program,
76957702
getLocalNameOfContainer: getLocalNameOfContainer,
76967703
getExpressionNamePrefix: getExpressionNamePrefix,
@@ -7705,9 +7712,13 @@ module ts {
77057712
writeTypeAtLocation: writeTypeAtLocation,
77067713
writeReturnTypeOfSignatureDeclaration: writeReturnTypeOfSignatureDeclaration,
77077714
isSymbolAccessible: isSymbolAccessible,
7708-
isImportDeclarationEntityNameReferenceDeclarationVisibile: isImportDeclarationEntityNameReferenceDeclarationVisibile,
7715+
isImportDeclarationEntityNameReferenceDeclarationVisible: isImportDeclarationEntityNameReferenceDeclarationVisible,
77097716
getConstantValue: getConstantValue,
7710-
};
7717+
}
7718+
}
7719+
7720+
function invokeEmitter(targetSourceFile?: SourceFile) {
7721+
var resolver = createResolver();
77117722
checkProgram();
77127723
return emitFiles(resolver, targetSourceFile);
77137724
}

0 commit comments

Comments
 (0)