tests/cases/compiler/capturedLetConstInLoop8.ts(73,21): error TS2367: This condition will always return 'false' since the types '0' and '1' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(76,21): error TS2367: This condition will always return 'false' since the types '0' and '1' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(79,21): error TS2367: This condition will always return 'false' since the types '0' and '1' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(82,21): error TS2367: This condition will always return 'false' since the types '0' and '1' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(86,21): error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(89,21): error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(92,21): error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(95,21): error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(98,21): error TS2367: This condition will always return 'false' since the types '0' and '3' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(102,17): error TS2367: This condition will always return 'false' since the types '0' and '1' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(105,17): error TS2367: This condition will always return 'false' since the types '0' and '1' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(108,17): error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(111,17): error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(114,17): error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(117,17): error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
tests/cases/compiler/capturedLetConstInLoop8.ts(120,17): error TS2367: This condition will always return 'false' since the types '0' and '3' have no overlap.


==== tests/cases/compiler/capturedLetConstInLoop8.ts (16 errors) ====
    function foo() {
        l0:
        for (let z = 0; z < 1; ++z) {
            l1:
            for (let x = 0; x < 1; ++x) {
                ll1:
                for (let y = 0; y < 1; ++y) {
                    (function() { return x + y });
                    (() => x + y);
                    if (y == 1) {
                        break;
                    }
                    if (y == 1) {
                        break l1;
                    }
                    if (y == 1) {
                        break ll1;
                    }
                    if (y == 1) {
                        continue l0;
                    }
    
                    if (x == 2) {
                        continue;
                    }
                    if (x == 2) {
                        continue l1;
                    }
                    if (x == 2) {
                        continue ll1;
                    }
                    if (x == 2) {
                        return "123"
                    }
                    if (x == 3) {
                        return;
                    }
                }
                if (x == 1) {
                    break;
                }
                if (x == 1) {
                    break l1;
                }
                if (x == 2) {
                    continue;
                }
                if (x == 2) {
                    continue l1;
                }
                if (x == 2) {
                    continue l0;
                }
                if (x == 2) {
                    return "456";
                }
                if (x == 3) {
                    return;
                }
            }
        }
    }
    
    function foo_c() {
        l0:
        for (const z = 0; z < 1;) {
            l1:
            for (const x = 0; x < 1;) {
                ll1:
                for (const y = 0; y < 1;) {
                    (function() { return x + y });
                    (() => x + y);
                    if (y == 1) {
                        ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '1' have no overlap.
                        break;
                    }
                    if (y == 1) {
                        ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '1' have no overlap.
                        break l1;
                    }
                    if (y == 1) {
                        ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '1' have no overlap.
                        break ll1;
                    }
                    if (y == 1) {
                        ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '1' have no overlap.
                        continue l0;
                    }
    
                    if (x == 2) {
                        ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
                        continue;
                    }
                    if (x == 2) {
                        ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
                        continue l1;
                    }
                    if (x == 2) {
                        ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
                        continue ll1;
                    }
                    if (x == 2) {
                        ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
                        return "123"
                    }
                    if (x == 3) {
                        ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '3' have no overlap.
                        return;
                    }
                }
                if (x == 1) {
                    ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '1' have no overlap.
                    break;
                }
                if (x == 1) {
                    ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '1' have no overlap.
                    break l1;
                }
                if (x == 2) {
                    ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
                    continue;
                }
                if (x == 2) {
                    ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
                    continue l1;
                }
                if (x == 2) {
                    ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
                    continue l0;
                }
                if (x == 2) {
                    ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '2' have no overlap.
                    return "456";
                }
                if (x == 3) {
                    ~~~~~~
!!! error TS2367: This condition will always return 'false' since the types '0' and '3' have no overlap.
                    return;
                }
            }
        }
    }
    