From ff7169530b18a874d396ace114be3e2e4dbfa31c Mon Sep 17 00:00:00 2001 From: Wesley Wigham Date: Tue, 6 Oct 2015 12:49:42 -0700 Subject: [PATCH] trial of change --- src/compiler/checker.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 40db300d310..ec2a5bfb020 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -1020,11 +1020,14 @@ namespace ts { return links.resolvedExports || (links.resolvedExports = getExportsForModule(moduleSymbol)); } - function extendExportSymbols(target: SymbolTable, source: SymbolTable) { + function extendExportSymbols(originalModule: Symbol, target: SymbolTable, source: SymbolTable) { for (let id in source) { if (id !== "default" && !hasProperty(target, id)) { target[id] = source[id]; } + else if (id !== "default" && hasProperty(target, id)) { + diagnostics.add(createFileDiagnostic(getSourceFileOfNode(originalModule.valueDeclaration), 0, 0, Diagnostics.Duplicate_identifier_0, id)); + } } } @@ -1043,7 +1046,7 @@ namespace ts { if (!result) { result = cloneSymbolTable(moduleSymbol.exports); } - extendExportSymbols(result, symbol.exports); + extendExportSymbols(moduleSymbol, result, symbol.exports); } // All export * declarations are collected in an __export symbol by the binder let exportStars = symbol.exports["__export"];