Closed
Description
Bug Report
π Search Terms
conditional type narrow nongeneric
π Version & Regression Information
- This changed between versions 3.8 and 3.9
β― Playground Link
Playground link with relevant code
π» Code
type Q<T> = number extends T ? (n: number) => void : never;
function fn<T>(arg: Q<T>) {
// Expected: OK
// Actual: Cannot convert 10 to number & T
arg(10);
}
// Legal invocations are not problematic
fn<string | number>(m => m.toFixed());
fn<number>(m => m.toFixed());
π Actual behavior
Error issued at arg(10)
, even though by inspection this is always a legal call.
π Expected behavior
Honestly, not sure.