Uh oh!
There was an error while loading. Please reload this page.
CFA for dependent parameters typed by generic constraints - #48411
Conversation
Anders Hejlsberg (ahejlsberg)
commented
Mar 24, 2022
TypeScript Bot (@typescript-bot) test this |
Heya Anders Hejlsberg (@ahejlsberg), I've started to run the diff-based community code test suite on this PR at 44e8d72. You can monitor the build here. Update: The results are in! |
Heya Anders Hejlsberg (@ahejlsberg), I've started to run the parallelized Definitely Typed test suite on this PR at 44e8d72. You can monitor the build here. |
Heya Anders Hejlsberg (@ahejlsberg), I've started to run the abridged perf test suite on this PR at 44e8d72. You can monitor the build here. Update: The results are in! |
Heya Anders Hejlsberg (@ahejlsberg), I've started to run the extended test suite on this PR at 44e8d72. You can monitor the build here. |
TypeScript Bot (typescript-bot)
commented
Mar 25, 2022
Anders Hejlsberg (@ahejlsberg) Here they are:Comparison Report - main..48411
System
Hosts
Scenarios
Developer Information: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
TypeScript Bot (typescript-bot)
commented
Mar 25, 2022
Anders Hejlsberg (@ahejlsberg) |
| const contextualSignature = getContextualSignature(func); | ||
| if (contextualSignature && contextualSignature.parameters.length === 1 && signatureHasRestParameter(contextualSignature)) { | ||
| const restType = getTypeOfSymbol(contextualSignature.parameters[0]); | ||
| const restType = getReducedApparentType(getTypeOfSymbol(contextualSignature.parameters[0])); |
Anders Hejlsberg (ahejlsberg)
commented
Mar 25, 2022
Michael Borislav (awerlogus)
commented
Mar 25, 2022
For test suite: functiona<Textends'a'|'b'>(arg: T){if(arg==='a'){// Expected: 'a'// Got: T extends "a" | "b"arg}} |
* upstream/main: (473 commits) Correct node used for isDefinition calculation (microsoft#48499) fix(48405): emit dummy members from a mapped type (microsoft#48481) CFA for dependent parameters typed by generic constraints (microsoft#48411) No contextual typing from return types for boolean literals (microsoft#48380) fix(47733): omit JSDoc comment template suggestion on node with existing JSDoc (microsoft#47748) Ensure that we copy empty NodeArrays during transform (microsoft#48490) Add a new compiler option `moduleSuffixes` to expand the node module resolver's search algorithm (microsoft#48189) feat(27615): Add missing member fix should work for type literals (microsoft#47212) Add label details to completion entry (microsoft#48429) Enable method signature completion for object literals (microsoft#48168) Fix string literal completions when a partially-typed string fixes inference to a type parameter (microsoft#48410) fix(48445): show errors on type-only import/export specifiers in JavaScript files (microsoft#48449) Fix newline inserted in empty block at end of formatting range (microsoft#48463) Prevent looking up symbol for as const from triggering an error (microsoft#48464) Revise accessor resolution logic and error reporting (microsoft#48459) fix(48166): skip checking module.exports in a truthiness call expression (microsoft#48337) LEGO: Merge pull request 48450 LEGO: Merge pull request 48436 fix(48031): show circularity error for self referential get accessor annotations (microsoft#48050) Revert "Fix contextual discrimination for omitted members (microsoft#43937)" (microsoft#48426) ...
Fixes#48345.