diff --git a/tests/cases/compiler/subtypeRelationForNever.ts b/tests/cases/compiler/subtypeRelationForNever.ts new file mode 100644 index 00000000000..f886d3937ae --- /dev/null +++ b/tests/cases/compiler/subtypeRelationForNever.ts @@ -0,0 +1,6 @@ +function fail(message: string) : never { throw new Error(message); } +function withFew(values: a[], haveFew: (values: a[]) => r, haveNone: (reason: string) => r): r { + return values.length > 0 ? haveFew(values) : haveNone('No values.'); +} +function id(value: a) : a { return value; } +const result = withFew([1, 2, 3], id, fail); // expected result is number[]