TypeScript/tests/baselines/reference/computedPropertyNames48_ES5.js
Daniel Rosenwasser ffae189e89 Merge branch 'master' into unrewrite
Conflicts:
	src/compiler/emitter.ts
	tests/baselines/reference/ES5SymbolProperty1.js
	tests/baselines/reference/FunctionDeclaration8_es6.js
	tests/baselines/reference/FunctionDeclaration9_es6.js
	tests/baselines/reference/FunctionPropertyAssignments5_es6.js
	tests/baselines/reference/computedPropertyNames10_ES5.js
	tests/baselines/reference/computedPropertyNames11_ES5.js
	tests/baselines/reference/computedPropertyNames18_ES5.js
	tests/baselines/reference/computedPropertyNames19_ES5.js
	tests/baselines/reference/computedPropertyNames1_ES5.js
	tests/baselines/reference/computedPropertyNames20_ES5.js
	tests/baselines/reference/computedPropertyNames22_ES5.js
	tests/baselines/reference/computedPropertyNames23_ES5.js
	tests/baselines/reference/computedPropertyNames25_ES5.js
	tests/baselines/reference/computedPropertyNames26_ES5.js
	tests/baselines/reference/computedPropertyNames28_ES5.js
	tests/baselines/reference/computedPropertyNames29_ES5.js
	tests/baselines/reference/computedPropertyNames30_ES5.js
	tests/baselines/reference/computedPropertyNames31_ES5.js
	tests/baselines/reference/computedPropertyNames33_ES5.js
	tests/baselines/reference/computedPropertyNames34_ES5.js
	tests/baselines/reference/computedPropertyNames46_ES5.js
	tests/baselines/reference/computedPropertyNames47_ES5.js
	tests/baselines/reference/computedPropertyNames48_ES5.js
	tests/baselines/reference/computedPropertyNames49_ES5.js
	tests/baselines/reference/computedPropertyNames4_ES5.js
	tests/baselines/reference/computedPropertyNames50_ES5.js
	tests/baselines/reference/computedPropertyNames5_ES5.js
	tests/baselines/reference/computedPropertyNames6_ES5.js
	tests/baselines/reference/computedPropertyNames7_ES5.js
	tests/baselines/reference/computedPropertyNames8_ES5.js
	tests/baselines/reference/computedPropertyNames9_ES5.js
	tests/baselines/reference/computedPropertyNamesContextualType10_ES5.js
	tests/baselines/reference/computedPropertyNamesContextualType1_ES5.js
	tests/baselines/reference/computedPropertyNamesContextualType2_ES5.js
	tests/baselines/reference/computedPropertyNamesContextualType3_ES5.js
	tests/baselines/reference/computedPropertyNamesContextualType4_ES5.js
	tests/baselines/reference/computedPropertyNamesContextualType5_ES5.js
	tests/baselines/reference/computedPropertyNamesContextualType6_ES5.js
	tests/baselines/reference/computedPropertyNamesContextualType7_ES5.js
	tests/baselines/reference/computedPropertyNamesContextualType8_ES5.js
	tests/baselines/reference/computedPropertyNamesContextualType9_ES5.js
	tests/baselines/reference/computedPropertyNamesDeclarationEmit5_ES5.js
	tests/baselines/reference/computedPropertyNamesSourceMap2_ES5.js
	tests/baselines/reference/computedPropertyNamesSourceMap2_ES5.js.map
	tests/baselines/reference/computedPropertyNamesSourceMap2_ES5.sourcemap.txt
	tests/baselines/reference/parserES5ComputedPropertyName2.js
	tests/baselines/reference/parserES5ComputedPropertyName3.js
	tests/baselines/reference/parserES5ComputedPropertyName4.js
	tests/baselines/reference/privateIndexer2.js
2015-04-06 14:19:28 -07:00

39 lines
746 B
TypeScript

//// [computedPropertyNames48_ES5.ts]
declare function extractIndexer<T>(p: { [n: number]: T }): T;
enum E { x }
var a: any;
extractIndexer({
[a]: ""
}); // Should return string
extractIndexer({
[E.x]: ""
}); // Should return string
extractIndexer({
["" || 0]: ""
}); // Should return any (widened form of undefined)
//// [computedPropertyNames48_ES5.js]
var E;
(function (E) {
E[E["x"] = 0] = "x";
})(E || (E = {}));
var a;
extractIndexer((_a = {},
_a[a] = "",
_a
)); // Should return string
extractIndexer((_b = {},
_b[E.x] = "",
_b
)); // Should return string
extractIndexer((_c = {},
_c["" || 0] = "",
_c
)); // Should return any (widened form of undefined)
var _a, _b, _c;