2017-11-16 21:17:26 +01:00
|
|
|
// @noImplicitReturns: true
|
|
|
|
|
|
|
|
function foo1(bar: "a"): number {
|
|
|
|
switch(bar) {
|
|
|
|
case "a":
|
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
function foo2(bar: "a"): number {
|
|
|
|
switch(bar) {
|
|
|
|
case "a":
|
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
let unusedVariable;
|
|
|
|
}
|
|
|
|
|
|
|
|
function foo3(bar: "a"): number {
|
|
|
|
switch(bar) {
|
|
|
|
case "a":
|
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
function neverCalled() {}
|
|
|
|
}
|
|
|
|
|
|
|
|
function foo4(bar: "a"): number {
|
|
|
|
switch(bar) {
|
|
|
|
case "a":
|
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
foo3(bar);
|
|
|
|
}
|
|
|
|
|
|
|
|
function foo5(bar: "a" | "b"): number {
|
|
|
|
switch(bar) {
|
|
|
|
case "a":
|
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
}
|
2019-09-21 02:17:39 +02:00
|
|
|
|
|
|
|
function foo6(bar: "a", a: boolean, b: boolean): number {
|
|
|
|
if (a) {
|
|
|
|
switch (bar) {
|
|
|
|
case "a": return 1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
switch (b) {
|
|
|
|
case true: return -1;
|
|
|
|
case false: return 0;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|