tests/cases/compiler/reachabilityChecks5.ts(5,17): error TS7030: Not all code paths return a value.
tests/cases/compiler/reachabilityChecks5.ts(18,17): error TS2355: A function whose declared type is neither 'void' nor 'any' must return a value.
tests/cases/compiler/reachabilityChecks5.ts(30,17): error TS7030: Not all code paths return a value.
tests/cases/compiler/reachabilityChecks5.ts(40,17): error TS7030: Not all code paths return a value.
tests/cases/compiler/reachabilityChecks5.ts(51,17): error TS7030: Not all code paths return a value.
tests/cases/compiler/reachabilityChecks5.ts(79,17): error TS7030: Not all code paths return a value.
tests/cases/compiler/reachabilityChecks5.ts(85,13): error TS7027: Unreachable code detected.
tests/cases/compiler/reachabilityChecks5.ts(93,17): error TS7030: Not all code paths return a value.
tests/cases/compiler/reachabilityChecks5.ts(96,13): error TS7027: Unreachable code detected.
tests/cases/compiler/reachabilityChecks5.ts(115,18): error TS7030: Not all code paths return a value.
tests/cases/compiler/reachabilityChecks5.ts(122,13): error TS7027: Unreachable code detected.


==== tests/cases/compiler/reachabilityChecks5.ts (11 errors) ====
    function f0(x): number {
        while (true);
    }
    
    function f1(x): number {
                    ~~~~~~
!!! error TS7030: Not all code paths return a value.
        if (x) {
            return 1
        }
    }
    
    function f2(x): number {
        while (x) {
            throw new Error();
        }
        return 1;
    }
    
    function f3(x): number {
                    ~~~~~~
!!! error TS2355: A function whose declared type is neither 'void' nor 'any' must return a value.
        while (x) {
            throw new Error();
        }
    }
    
    function f3_1 (x): number {
        while (x) {
        }
        throw new Error();
    }
    
    function f4(x): number {
                    ~~~~~~
!!! error TS7030: Not all code paths return a value.
        try {
            if (x) {
                return 1;
            }
        }
        catch (e) {
        }
    }
    
    function f5(x): number {
                    ~~~~~~
!!! error TS7030: Not all code paths return a value.
        try {
            if (x) {
                return 1;
            }
        }
        catch (e) {
            return 2;
        }
    }
    
    function f6(x): number {
                    ~~~~~~
!!! error TS7030: Not all code paths return a value.
        try {
            if (x) {
                return 1;
            }
            else 
            {
                throw new Error();
            }
        }
        catch (e) {
        }
    }
    
    function f7(x): number {
        try {
            if (x) {
                return 1;
            }
            else {
                throw new Error();
            }
        }
        catch (e) {
            return 1;
        }
    }
    
    function f8(x): number {
                    ~~~~~~
!!! error TS7030: Not all code paths return a value.
        try {
            if (true) {
                x++;
            }
            else {
                return 1;
                ~~~~~~
!!! error TS7027: Unreachable code detected.
            }
        }
        catch (e) {
            return 1;
        }
    }
    
    function f9(x): number {
                    ~~~~~~
!!! error TS7030: Not all code paths return a value.
        try {
            while (false) {
                return 1;
                ~~~~~~
!!! error TS7027: Unreachable code detected.
            }
        }
        catch (e) {
            return 1;
        }
    }
    
    function f10(x): number {
        try {
            do {
                x++;
            } while (true);
        }
        catch (e) {
            return 1;
        }
    }
    
    function f11(x): number {
                     ~~~~~~
!!! error TS7030: Not all code paths return a value.
        test:
        try {
            do {
                do {
                    break test;
                } while (true);
                x++;
                ~
!!! error TS7027: Unreachable code detected.
            } while (true);
        }
        catch (e) {
            return 1;
        }
    }