mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-05-15 12:51:30 -05:00
Merge pull request #6494 from Microsoft/addUndefinedCheckToCollectLinkedAliases
Fix for https://github.com/Microsoft/TypeScript/issues/6428
This commit is contained in:
@@ -2365,7 +2365,9 @@ namespace ts {
|
||||
const firstIdentifier = getFirstIdentifier(internalModuleReference);
|
||||
const importSymbol = resolveName(declaration, firstIdentifier.text, SymbolFlags.Value | SymbolFlags.Type | SymbolFlags.Namespace,
|
||||
Diagnostics.Cannot_find_name_0, firstIdentifier);
|
||||
buildVisibleNodeList(importSymbol.declarations);
|
||||
if (importSymbol) {
|
||||
buildVisibleNodeList(importSymbol.declarations);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
tests/cases/compiler/declarationEmit_UnknownImport.ts(2,1): error TS2304: Cannot find name 'SomeNonExistingName'.
|
||||
tests/cases/compiler/declarationEmit_UnknownImport.ts(2,14): error TS2503: Cannot find namespace 'SomeNonExistingName'.
|
||||
tests/cases/compiler/declarationEmit_UnknownImport.ts(2,14): error TS4000: Import declaration 'Foo' is using private name 'SomeNonExistingName'.
|
||||
|
||||
|
||||
==== tests/cases/compiler/declarationEmit_UnknownImport.ts (3 errors) ====
|
||||
|
||||
import Foo = SomeNonExistingName
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
!!! error TS2304: Cannot find name 'SomeNonExistingName'.
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
!!! error TS2503: Cannot find namespace 'SomeNonExistingName'.
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
!!! error TS4000: Import declaration 'Foo' is using private name 'SomeNonExistingName'.
|
||||
export {Foo}
|
||||
@@ -0,0 +1,7 @@
|
||||
//// [declarationEmit_UnknownImport.ts]
|
||||
|
||||
import Foo = SomeNonExistingName
|
||||
export {Foo}
|
||||
|
||||
//// [declarationEmit_UnknownImport.js]
|
||||
"use strict";
|
||||
@@ -0,0 +1,21 @@
|
||||
tests/cases/compiler/declarationEmit_UnknownImport2.ts(2,1): error TS2304: Cannot find name 'From'.
|
||||
tests/cases/compiler/declarationEmit_UnknownImport2.ts(2,12): error TS1005: '=' expected.
|
||||
tests/cases/compiler/declarationEmit_UnknownImport2.ts(2,12): error TS2503: Cannot find namespace 'From'.
|
||||
tests/cases/compiler/declarationEmit_UnknownImport2.ts(2,12): error TS4000: Import declaration 'Foo' is using private name 'From'.
|
||||
tests/cases/compiler/declarationEmit_UnknownImport2.ts(2,17): error TS1005: ';' expected.
|
||||
|
||||
|
||||
==== tests/cases/compiler/declarationEmit_UnknownImport2.ts (5 errors) ====
|
||||
|
||||
import Foo From './Foo'; // Syntax error
|
||||
~~~~~~~~~~~~~~~
|
||||
!!! error TS2304: Cannot find name 'From'.
|
||||
~~~~
|
||||
!!! error TS1005: '=' expected.
|
||||
~~~~
|
||||
!!! error TS2503: Cannot find namespace 'From'.
|
||||
~~~~
|
||||
!!! error TS4000: Import declaration 'Foo' is using private name 'From'.
|
||||
~~~~~~~
|
||||
!!! error TS1005: ';' expected.
|
||||
export default Foo
|
||||
@@ -0,0 +1,8 @@
|
||||
//// [declarationEmit_UnknownImport2.ts]
|
||||
|
||||
import Foo From './Foo'; // Syntax error
|
||||
export default Foo
|
||||
|
||||
//// [declarationEmit_UnknownImport2.js]
|
||||
"use strict";
|
||||
'./Foo'; // Syntax error
|
||||
6
tests/cases/compiler/declarationEmit_UnknownImport.ts
Normal file
6
tests/cases/compiler/declarationEmit_UnknownImport.ts
Normal file
@@ -0,0 +1,6 @@
|
||||
// @target: es5
|
||||
// @module: commonjs
|
||||
// @declaration: true
|
||||
|
||||
import Foo = SomeNonExistingName
|
||||
export {Foo}
|
||||
6
tests/cases/compiler/declarationEmit_UnknownImport2.ts
Normal file
6
tests/cases/compiler/declarationEmit_UnknownImport2.ts
Normal file
@@ -0,0 +1,6 @@
|
||||
// @target: es5
|
||||
// @module: commonjs
|
||||
// @declaration: true
|
||||
|
||||
import Foo From './Foo'; // Syntax error
|
||||
export default Foo
|
||||
Reference in New Issue
Block a user