@@ -2123,135 +2123,171 @@ const Derived02c03 = new Derived02<number>(1);
2123
2123
>Derived02c03 : Symbol(Derived02c03, Decl(genericDefaults.ts, 457, 5))
2124
2124
>Derived02 : Symbol(Derived02, Decl(genericDefaults.ts, 451, 46))
2125
2125
2126
+ // https://github.com/Microsoft/TypeScript/issues/16211
2127
+ interface Base02 {}
2128
+ >Base02 : Symbol(Base02, Decl(genericDefaults.ts, 457, 46), Decl(genericDefaults.ts, 462, 13))
2129
+
2130
+ interface Base02Constructor { new <T = A>(a: T): Base02 & T; }
2131
+ >Base02Constructor : Symbol(Base02Constructor, Decl(genericDefaults.ts, 460, 19))
2132
+ >T : Symbol(T, Decl(genericDefaults.ts, 461, 35))
2133
+ >A : Symbol(A, Decl(genericDefaults.ts, 0, 0))
2134
+ >a : Symbol(a, Decl(genericDefaults.ts, 461, 42))
2135
+ >T : Symbol(T, Decl(genericDefaults.ts, 461, 35))
2136
+ >Base02 : Symbol(Base02, Decl(genericDefaults.ts, 457, 46), Decl(genericDefaults.ts, 462, 13))
2137
+ >T : Symbol(T, Decl(genericDefaults.ts, 461, 35))
2138
+
2139
+ declare const Base02: Base02Constructor;
2140
+ >Base02 : Symbol(Base02, Decl(genericDefaults.ts, 457, 46), Decl(genericDefaults.ts, 462, 13))
2141
+ >Base02Constructor : Symbol(Base02Constructor, Decl(genericDefaults.ts, 460, 19))
2142
+
2143
+ declare class Derived03 extends Base02 {}
2144
+ >Derived03 : Symbol(Derived03, Decl(genericDefaults.ts, 462, 40))
2145
+ >Base02 : Symbol(Base02, Decl(genericDefaults.ts, 457, 46), Decl(genericDefaults.ts, 462, 13))
2146
+
2147
+ const Derived03c00 = new Derived03(ab);
2148
+ >Derived03c00 : Symbol(Derived03c00, Decl(genericDefaults.ts, 464, 5))
2149
+ >Derived03 : Symbol(Derived03, Decl(genericDefaults.ts, 462, 40))
2150
+ >ab : Symbol(ab, Decl(genericDefaults.ts, 11, 13))
2151
+
2152
+ const Derived03c01 = Derived03c00.a;
2153
+ >Derived03c01 : Symbol(Derived03c01, Decl(genericDefaults.ts, 465, 5))
2154
+ >Derived03c00.a : Symbol(A.a, Decl(genericDefaults.ts, 0, 13))
2155
+ >Derived03c00 : Symbol(Derived03c00, Decl(genericDefaults.ts, 464, 5))
2156
+ >a : Symbol(A.a, Decl(genericDefaults.ts, 0, 13))
2157
+
2158
+ type DerivedProps = keyof Derived03;
2159
+ >DerivedProps : Symbol(DerivedProps, Decl(genericDefaults.ts, 465, 36))
2160
+ >Derived03 : Symbol(Derived03, Decl(genericDefaults.ts, 462, 40))
2161
+
2126
2162
type t00<T = number> = { a: T; }
2127
- >t00 : Symbol(t00, Decl(genericDefaults.ts, 457, 46 ))
2128
- >T : Symbol(T, Decl(genericDefaults.ts, 459 , 9))
2129
- >a : Symbol(a, Decl(genericDefaults.ts, 459 , 24))
2130
- >T : Symbol(T, Decl(genericDefaults.ts, 459 , 9))
2163
+ >t00 : Symbol(t00, Decl(genericDefaults.ts, 466, 36 ))
2164
+ >T : Symbol(T, Decl(genericDefaults.ts, 468 , 9))
2165
+ >a : Symbol(a, Decl(genericDefaults.ts, 468 , 24))
2166
+ >T : Symbol(T, Decl(genericDefaults.ts, 468 , 9))
2131
2167
2132
2168
const t00c00 = (<t00>x).a;
2133
- >t00c00 : Symbol(t00c00, Decl(genericDefaults.ts, 460 , 5))
2134
- >(<t00>x).a : Symbol(a, Decl(genericDefaults.ts, 459 , 24))
2135
- >t00 : Symbol(t00, Decl(genericDefaults.ts, 457, 46 ))
2169
+ >t00c00 : Symbol(t00c00, Decl(genericDefaults.ts, 469 , 5))
2170
+ >(<t00>x).a : Symbol(a, Decl(genericDefaults.ts, 468 , 24))
2171
+ >t00 : Symbol(t00, Decl(genericDefaults.ts, 466, 36 ))
2136
2172
>x : Symbol(x, Decl(genericDefaults.ts, 13, 13))
2137
- >a : Symbol(a, Decl(genericDefaults.ts, 459 , 24))
2173
+ >a : Symbol(a, Decl(genericDefaults.ts, 468 , 24))
2138
2174
2139
2175
const t00c01 = (<t00<number>>x).a;
2140
- >t00c01 : Symbol(t00c01, Decl(genericDefaults.ts, 461 , 5))
2141
- >(<t00<number>>x).a : Symbol(a, Decl(genericDefaults.ts, 459 , 24))
2142
- >t00 : Symbol(t00, Decl(genericDefaults.ts, 457, 46 ))
2176
+ >t00c01 : Symbol(t00c01, Decl(genericDefaults.ts, 470 , 5))
2177
+ >(<t00<number>>x).a : Symbol(a, Decl(genericDefaults.ts, 468 , 24))
2178
+ >t00 : Symbol(t00, Decl(genericDefaults.ts, 466, 36 ))
2143
2179
>x : Symbol(x, Decl(genericDefaults.ts, 13, 13))
2144
- >a : Symbol(a, Decl(genericDefaults.ts, 459 , 24))
2180
+ >a : Symbol(a, Decl(genericDefaults.ts, 468 , 24))
2145
2181
2146
2182
type t01<T, U = T> = { a: [T, U]; }
2147
- >t01 : Symbol(t01, Decl(genericDefaults.ts, 461 , 34))
2148
- >T : Symbol(T, Decl(genericDefaults.ts, 463 , 9))
2149
- >U : Symbol(U, Decl(genericDefaults.ts, 463 , 11))
2150
- >T : Symbol(T, Decl(genericDefaults.ts, 463 , 9))
2151
- >a : Symbol(a, Decl(genericDefaults.ts, 463 , 22))
2152
- >T : Symbol(T, Decl(genericDefaults.ts, 463 , 9))
2153
- >U : Symbol(U, Decl(genericDefaults.ts, 463 , 11))
2183
+ >t01 : Symbol(t01, Decl(genericDefaults.ts, 470 , 34))
2184
+ >T : Symbol(T, Decl(genericDefaults.ts, 472 , 9))
2185
+ >U : Symbol(U, Decl(genericDefaults.ts, 472 , 11))
2186
+ >T : Symbol(T, Decl(genericDefaults.ts, 472 , 9))
2187
+ >a : Symbol(a, Decl(genericDefaults.ts, 472 , 22))
2188
+ >T : Symbol(T, Decl(genericDefaults.ts, 472 , 9))
2189
+ >U : Symbol(U, Decl(genericDefaults.ts, 472 , 11))
2154
2190
2155
2191
const t01c00 = (<t01<number>>x).a;
2156
- >t01c00 : Symbol(t01c00, Decl(genericDefaults.ts, 464 , 5))
2157
- >(<t01<number>>x).a : Symbol(a, Decl(genericDefaults.ts, 463 , 22))
2158
- >t01 : Symbol(t01, Decl(genericDefaults.ts, 461 , 34))
2192
+ >t01c00 : Symbol(t01c00, Decl(genericDefaults.ts, 473 , 5))
2193
+ >(<t01<number>>x).a : Symbol(a, Decl(genericDefaults.ts, 472 , 22))
2194
+ >t01 : Symbol(t01, Decl(genericDefaults.ts, 470 , 34))
2159
2195
>x : Symbol(x, Decl(genericDefaults.ts, 13, 13))
2160
- >a : Symbol(a, Decl(genericDefaults.ts, 463 , 22))
2196
+ >a : Symbol(a, Decl(genericDefaults.ts, 472 , 22))
2161
2197
2162
2198
const t01c01 = (<t01<number, string>>x).a;
2163
- >t01c01 : Symbol(t01c01, Decl(genericDefaults.ts, 465 , 5))
2164
- >(<t01<number, string>>x).a : Symbol(a, Decl(genericDefaults.ts, 463 , 22))
2165
- >t01 : Symbol(t01, Decl(genericDefaults.ts, 461 , 34))
2199
+ >t01c01 : Symbol(t01c01, Decl(genericDefaults.ts, 474 , 5))
2200
+ >(<t01<number, string>>x).a : Symbol(a, Decl(genericDefaults.ts, 472 , 22))
2201
+ >t01 : Symbol(t01, Decl(genericDefaults.ts, 470 , 34))
2166
2202
>x : Symbol(x, Decl(genericDefaults.ts, 13, 13))
2167
- >a : Symbol(a, Decl(genericDefaults.ts, 463 , 22))
2203
+ >a : Symbol(a, Decl(genericDefaults.ts, 472 , 22))
2168
2204
2169
2205
type t02<T extends number, U = T> = { a: [T, U]; }
2170
- >t02 : Symbol(t02, Decl(genericDefaults.ts, 465 , 42))
2171
- >T : Symbol(T, Decl(genericDefaults.ts, 467 , 9))
2172
- >U : Symbol(U, Decl(genericDefaults.ts, 467 , 26))
2173
- >T : Symbol(T, Decl(genericDefaults.ts, 467 , 9))
2174
- >a : Symbol(a, Decl(genericDefaults.ts, 467 , 37))
2175
- >T : Symbol(T, Decl(genericDefaults.ts, 467 , 9))
2176
- >U : Symbol(U, Decl(genericDefaults.ts, 467 , 26))
2206
+ >t02 : Symbol(t02, Decl(genericDefaults.ts, 474 , 42))
2207
+ >T : Symbol(T, Decl(genericDefaults.ts, 476 , 9))
2208
+ >U : Symbol(U, Decl(genericDefaults.ts, 476 , 26))
2209
+ >T : Symbol(T, Decl(genericDefaults.ts, 476 , 9))
2210
+ >a : Symbol(a, Decl(genericDefaults.ts, 476 , 37))
2211
+ >T : Symbol(T, Decl(genericDefaults.ts, 476 , 9))
2212
+ >U : Symbol(U, Decl(genericDefaults.ts, 476 , 26))
2177
2213
2178
2214
const t02c00 = (<t02<number>>x).a;
2179
- >t02c00 : Symbol(t02c00, Decl(genericDefaults.ts, 468 , 5))
2180
- >(<t02<number>>x).a : Symbol(a, Decl(genericDefaults.ts, 467 , 37))
2181
- >t02 : Symbol(t02, Decl(genericDefaults.ts, 465 , 42))
2215
+ >t02c00 : Symbol(t02c00, Decl(genericDefaults.ts, 477 , 5))
2216
+ >(<t02<number>>x).a : Symbol(a, Decl(genericDefaults.ts, 476 , 37))
2217
+ >t02 : Symbol(t02, Decl(genericDefaults.ts, 474 , 42))
2182
2218
>x : Symbol(x, Decl(genericDefaults.ts, 13, 13))
2183
- >a : Symbol(a, Decl(genericDefaults.ts, 467 , 37))
2219
+ >a : Symbol(a, Decl(genericDefaults.ts, 476 , 37))
2184
2220
2185
2221
const t02c01 = (<t02<1>>x).a;
2186
- >t02c01 : Symbol(t02c01, Decl(genericDefaults.ts, 469 , 5))
2187
- >(<t02<1>>x).a : Symbol(a, Decl(genericDefaults.ts, 467 , 37))
2188
- >t02 : Symbol(t02, Decl(genericDefaults.ts, 465 , 42))
2222
+ >t02c01 : Symbol(t02c01, Decl(genericDefaults.ts, 478 , 5))
2223
+ >(<t02<1>>x).a : Symbol(a, Decl(genericDefaults.ts, 476 , 37))
2224
+ >t02 : Symbol(t02, Decl(genericDefaults.ts, 474 , 42))
2189
2225
>x : Symbol(x, Decl(genericDefaults.ts, 13, 13))
2190
- >a : Symbol(a, Decl(genericDefaults.ts, 467 , 37))
2226
+ >a : Symbol(a, Decl(genericDefaults.ts, 476 , 37))
2191
2227
2192
2228
const t02c02 = (<t02<number, number>>x).a;
2193
- >t02c02 : Symbol(t02c02, Decl(genericDefaults.ts, 470 , 5))
2194
- >(<t02<number, number>>x).a : Symbol(a, Decl(genericDefaults.ts, 467 , 37))
2195
- >t02 : Symbol(t02, Decl(genericDefaults.ts, 465 , 42))
2229
+ >t02c02 : Symbol(t02c02, Decl(genericDefaults.ts, 479 , 5))
2230
+ >(<t02<number, number>>x).a : Symbol(a, Decl(genericDefaults.ts, 476 , 37))
2231
+ >t02 : Symbol(t02, Decl(genericDefaults.ts, 474 , 42))
2196
2232
>x : Symbol(x, Decl(genericDefaults.ts, 13, 13))
2197
- >a : Symbol(a, Decl(genericDefaults.ts, 467 , 37))
2233
+ >a : Symbol(a, Decl(genericDefaults.ts, 476 , 37))
2198
2234
2199
2235
const t02c03 = (<t02<1, number>>x).a;
2200
- >t02c03 : Symbol(t02c03, Decl(genericDefaults.ts, 471 , 5))
2201
- >(<t02<1, number>>x).a : Symbol(a, Decl(genericDefaults.ts, 467 , 37))
2202
- >t02 : Symbol(t02, Decl(genericDefaults.ts, 465 , 42))
2236
+ >t02c03 : Symbol(t02c03, Decl(genericDefaults.ts, 480 , 5))
2237
+ >(<t02<1, number>>x).a : Symbol(a, Decl(genericDefaults.ts, 476 , 37))
2238
+ >t02 : Symbol(t02, Decl(genericDefaults.ts, 474 , 42))
2203
2239
>x : Symbol(x, Decl(genericDefaults.ts, 13, 13))
2204
- >a : Symbol(a, Decl(genericDefaults.ts, 467 , 37))
2240
+ >a : Symbol(a, Decl(genericDefaults.ts, 476 , 37))
2205
2241
2206
2242
const t02c04 = (<t02<number, 1>>x).a;
2207
- >t02c04 : Symbol(t02c04, Decl(genericDefaults.ts, 472 , 5))
2208
- >(<t02<number, 1>>x).a : Symbol(a, Decl(genericDefaults.ts, 467 , 37))
2209
- >t02 : Symbol(t02, Decl(genericDefaults.ts, 465 , 42))
2243
+ >t02c04 : Symbol(t02c04, Decl(genericDefaults.ts, 481 , 5))
2244
+ >(<t02<number, 1>>x).a : Symbol(a, Decl(genericDefaults.ts, 476 , 37))
2245
+ >t02 : Symbol(t02, Decl(genericDefaults.ts, 474 , 42))
2210
2246
>x : Symbol(x, Decl(genericDefaults.ts, 13, 13))
2211
- >a : Symbol(a, Decl(genericDefaults.ts, 467 , 37))
2247
+ >a : Symbol(a, Decl(genericDefaults.ts, 476 , 37))
2212
2248
2213
2249
type t03<T extends number, U extends T = T> = { a: [T, U]; }
2214
- >t03 : Symbol(t03, Decl(genericDefaults.ts, 472 , 37))
2215
- >T : Symbol(T, Decl(genericDefaults.ts, 474 , 9))
2216
- >U : Symbol(U, Decl(genericDefaults.ts, 474 , 26))
2217
- >T : Symbol(T, Decl(genericDefaults.ts, 474 , 9))
2218
- >T : Symbol(T, Decl(genericDefaults.ts, 474 , 9))
2219
- >a : Symbol(a, Decl(genericDefaults.ts, 474 , 47))
2220
- >T : Symbol(T, Decl(genericDefaults.ts, 474 , 9))
2221
- >U : Symbol(U, Decl(genericDefaults.ts, 474 , 26))
2250
+ >t03 : Symbol(t03, Decl(genericDefaults.ts, 481 , 37))
2251
+ >T : Symbol(T, Decl(genericDefaults.ts, 483 , 9))
2252
+ >U : Symbol(U, Decl(genericDefaults.ts, 483 , 26))
2253
+ >T : Symbol(T, Decl(genericDefaults.ts, 483 , 9))
2254
+ >T : Symbol(T, Decl(genericDefaults.ts, 483 , 9))
2255
+ >a : Symbol(a, Decl(genericDefaults.ts, 483 , 47))
2256
+ >T : Symbol(T, Decl(genericDefaults.ts, 483 , 9))
2257
+ >U : Symbol(U, Decl(genericDefaults.ts, 483 , 26))
2222
2258
2223
2259
const t03c00 = (<t03<number>>x).a;
2224
- >t03c00 : Symbol(t03c00, Decl(genericDefaults.ts, 475 , 5))
2225
- >(<t03<number>>x).a : Symbol(a, Decl(genericDefaults.ts, 474 , 47))
2226
- >t03 : Symbol(t03, Decl(genericDefaults.ts, 472 , 37))
2260
+ >t03c00 : Symbol(t03c00, Decl(genericDefaults.ts, 484 , 5))
2261
+ >(<t03<number>>x).a : Symbol(a, Decl(genericDefaults.ts, 483 , 47))
2262
+ >t03 : Symbol(t03, Decl(genericDefaults.ts, 481 , 37))
2227
2263
>x : Symbol(x, Decl(genericDefaults.ts, 13, 13))
2228
- >a : Symbol(a, Decl(genericDefaults.ts, 474 , 47))
2264
+ >a : Symbol(a, Decl(genericDefaults.ts, 483 , 47))
2229
2265
2230
2266
const t03c01 = (<t03<1>>x).a;
2231
- >t03c01 : Symbol(t03c01, Decl(genericDefaults.ts, 476 , 5))
2232
- >(<t03<1>>x).a : Symbol(a, Decl(genericDefaults.ts, 474 , 47))
2233
- >t03 : Symbol(t03, Decl(genericDefaults.ts, 472 , 37))
2267
+ >t03c01 : Symbol(t03c01, Decl(genericDefaults.ts, 485 , 5))
2268
+ >(<t03<1>>x).a : Symbol(a, Decl(genericDefaults.ts, 483 , 47))
2269
+ >t03 : Symbol(t03, Decl(genericDefaults.ts, 481 , 37))
2234
2270
>x : Symbol(x, Decl(genericDefaults.ts, 13, 13))
2235
- >a : Symbol(a, Decl(genericDefaults.ts, 474 , 47))
2271
+ >a : Symbol(a, Decl(genericDefaults.ts, 483 , 47))
2236
2272
2237
2273
const t03c02 = (<t03<number, number>>x).a;
2238
- >t03c02 : Symbol(t03c02, Decl(genericDefaults.ts, 477 , 5))
2239
- >(<t03<number, number>>x).a : Symbol(a, Decl(genericDefaults.ts, 474 , 47))
2240
- >t03 : Symbol(t03, Decl(genericDefaults.ts, 472 , 37))
2274
+ >t03c02 : Symbol(t03c02, Decl(genericDefaults.ts, 486 , 5))
2275
+ >(<t03<number, number>>x).a : Symbol(a, Decl(genericDefaults.ts, 483 , 47))
2276
+ >t03 : Symbol(t03, Decl(genericDefaults.ts, 481 , 37))
2241
2277
>x : Symbol(x, Decl(genericDefaults.ts, 13, 13))
2242
- >a : Symbol(a, Decl(genericDefaults.ts, 474 , 47))
2278
+ >a : Symbol(a, Decl(genericDefaults.ts, 483 , 47))
2243
2279
2244
2280
const t03c03 = (<t03<1, 1>>x).a;
2245
- >t03c03 : Symbol(t03c03, Decl(genericDefaults.ts, 478 , 5))
2246
- >(<t03<1, 1>>x).a : Symbol(a, Decl(genericDefaults.ts, 474 , 47))
2247
- >t03 : Symbol(t03, Decl(genericDefaults.ts, 472 , 37))
2281
+ >t03c03 : Symbol(t03c03, Decl(genericDefaults.ts, 487 , 5))
2282
+ >(<t03<1, 1>>x).a : Symbol(a, Decl(genericDefaults.ts, 483 , 47))
2283
+ >t03 : Symbol(t03, Decl(genericDefaults.ts, 481 , 37))
2248
2284
>x : Symbol(x, Decl(genericDefaults.ts, 13, 13))
2249
- >a : Symbol(a, Decl(genericDefaults.ts, 474 , 47))
2285
+ >a : Symbol(a, Decl(genericDefaults.ts, 483 , 47))
2250
2286
2251
2287
const t03c04 = (<t03<number, 1>>x).a;
2252
- >t03c04 : Symbol(t03c04, Decl(genericDefaults.ts, 479 , 5))
2253
- >(<t03<number, 1>>x).a : Symbol(a, Decl(genericDefaults.ts, 474 , 47))
2254
- >t03 : Symbol(t03, Decl(genericDefaults.ts, 472 , 37))
2288
+ >t03c04 : Symbol(t03c04, Decl(genericDefaults.ts, 488 , 5))
2289
+ >(<t03<number, 1>>x).a : Symbol(a, Decl(genericDefaults.ts, 483 , 47))
2290
+ >t03 : Symbol(t03, Decl(genericDefaults.ts, 481 , 37))
2255
2291
>x : Symbol(x, Decl(genericDefaults.ts, 13, 13))
2256
- >a : Symbol(a, Decl(genericDefaults.ts, 474 , 47))
2292
+ >a : Symbol(a, Decl(genericDefaults.ts, 483 , 47))
2257
2293
0 commit comments