Fix #4808: Follow target symbols

This commit is contained in:
Mohamed Hegazy 2016-05-04 12:06:51 -07:00
parent ff8e33768a
commit 1af576b064
2 changed files with 25 additions and 1 deletions

View File

@ -16795,7 +16795,11 @@ namespace ts {
return symbols;
}
else if (symbol.flags & SymbolFlags.Transient) {
const target = getSymbolLinks(symbol).target;
let target: Symbol;
let next: Symbol = symbol;
while (next = getSymbolLinks(next).target) {
target = next;
}
if (target) {
return [target];
}

View File

@ -0,0 +1,20 @@
/// <reference path='fourslash.ts'/>
////var x = {
//// [|property|]: {}
////};
////
////x.[|property|];
////
////let {[|property|]: pVar} = x;
let ranges = test.ranges();
for (let range of ranges) {
goTo.position(range.start);
verify.referencesCountIs(ranges.length);
for (let expectedReference of ranges) {
verify.referencesAtPositionContains(expectedReference);
}
}