// File: /workspace/github_c_makefile_star2_O1/meaning-matters[P]Except/Test.c
// Function: TestCheck
static void TestCheck(void)
{
    printf("\nCHECK TESTS -------------------------------------------\n\n");

    printf("-->%2d: Superfluous catch Exception at line %d?\n", testNum++,
           __LINE__ + 3);
    try;
    catch (Throwable, e);
    catch (Exception, e);
    finally;
    printf("\n");

    printf("-->%2d: Superfluous catch Level2Exception at line %d?\n", testNum++,
            __LINE__ + 4);
    try;
    catch (Exception, e);
    catch (FailedAssertion, e);
    catch (Level2Exception, e);
    catch (RuntimeException, e);
    finally;
    printf("\n");

    printf("-->%2d: Two superfluous catches?\n", testNum++);
    try;
    catch (Throwable, e);
    catch (FailedAssertion, e);
    catch (Exception, e);
    finally;
    printf("\n");

    printf("-->%2d: Duplicate catch (SegmentationFault) at line %d?\n", 
           testNum++, __LINE__ + 4);
    try;
    catch (SegmentationFault, e);
    catch (FailedAssertion, e);
    catch (SegmentationFault, e);
    catch (RuntimeException, e);
    finally;
    printf("\n");

    printf("-->%2d: Warning: No catches?\n", testNum++);
    try;
    finally;
    printf("\n");
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
leaq 0x47d3(%rip), %rdi      # 0xaa3b
callq 0x1070
movl 0x6fed(%rip), %esi      # 0xd260
movl %esi, %eax
incl %eax
movl %eax, 0x6fe3(%rip)      # 0xd260
leaq 0x44d8(%rip), %rdi      # 0xa75c
xorl %eax, %eax
movl $0x2a3, %edx            # imm = 0x2A3
callq 0x1080
leaq 0x6fd9(%rip), %r12      # 0xd270
movq (%r12), %rdi
leaq 0x41f6(%rip), %r14      # 0xa498
movl $0x2a1, %edx            # imm = 0x2A1
movq %r14, %rsi
callq 0x151a
leaq 0x70ea(%rip), %r15      # 0xd3a0
leaq 0x6e03(%rip), %rbp      # 0xd0c0
movq (%r12), %rdi
callq 0x12d2
movq %rax, %rbx
movq %rax, %rdi
movq %r15, %rsi
movq %r14, %rdx
movl $0x2a1, %ecx            # imm = 0x2A1
callq 0x1b4a
testl %eax, %eax
je 0x6306
movq (%rbx), %rdi
cmpl $0x0, 0x1b4(%rdi)
je 0x6306
addq $0x8, %rdi
movl $0x1, %r13d
movl %r13d, %esi
callq 0x1130
testl %eax, %eax
je 0x638e
movq %rbx, %rdi
movq %r15, %rsi
movq %rbp, %rdx
movq %r14, %rcx
movl $0x2a2, %r8d            # imm = 0x2A2
callq 0x1bde
testl %eax, %eax
je 0x633c
movq (%rbx), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x633c
movq %rbx, %rdi
movq %rbp, %rsi
callq 0x18a9
testl %eax, %eax
jne 0x637a
movq %rbx, %rdi
movq %r15, %rsi
leaq 0x6d97(%rip), %rdx      # 0xd0e0
movq %r14, %rcx
movl $0x2a3, %r8d            # imm = 0x2A3
callq 0x1bde
testl %eax, %eax
je 0x6398
movq (%rbx), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x6398
movq %rbx, %rdi
leaq 0x6d6f(%rip), %rsi      # 0xd0e0
callq 0x18a9
testl %eax, %eax
je 0x6398
movq 0x8(%rbx), %rdi
movl $0x1, %esi
callq 0x1f2b
movl $0x2, %r13d
movq (%rbx), %rax
movl %r13d, 0x1b8(%rax)
cmpl $0x0, 0x7001(%rip)      # 0xd3a0
je 0x62bd
movq (%rbx), %rdi
cmpl $0x0, 0x1b4(%rdi)
jne 0x63d8
addq $0xd0, %rdi
movl $0x1, %esi
callq 0x1130
testl %eax, %eax
jne 0x63d8
movq (%rbx), %rax
movl $0x1, 0x1b4(%rax)
jmp 0x62bd
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
movl $0x3, 0x1b8(%rax)
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
cmpl $0x0, 0x1b4(%rax)
jg 0x6410
movq (%r12), %rdi
callq 0x18f4
testl %eax, %eax
je 0x6432
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
movl 0x1b4(%rax), %ecx
movl %ecx, %edx
decl %edx
movl %edx, 0x1b4(%rax)
testl %ecx, %ecx
jg 0x6410
jmp 0x63ee
movl $0xa, %edi
callq 0x1050
movl 0x6e1e(%rip), %esi      # 0xd260
movl %esi, %eax
incl %eax
movl %eax, 0x6e14(%rip)      # 0xd260
leaq 0x433a(%rip), %rdi      # 0xa78d
xorl %eax, %eax
movl $0x2ac, %edx            # imm = 0x2AC
callq 0x1080
movq (%r12), %rdi
leaq 0x402e(%rip), %r14      # 0xa498
movl $0x2a9, %edx            # imm = 0x2A9
movq %r14, %rsi
callq 0x151a
leaq 0x6f26(%rip), %r15      # 0xd3a4
movl $0x1, %r13d
movq (%r12), %rdi
callq 0x12d2
movq %rax, %rbx
movq %rax, %rdi
movq %r15, %rsi
movq %r14, %rdx
movl $0x2a9, %ecx            # imm = 0x2A9
callq 0x1b4a
testl %eax, %eax
je 0x64cb
movq (%rbx), %rdi
cmpl $0x0, 0x1b4(%rdi)
je 0x64cb
addq $0x8, %rdi
movl $0x1, %ebp
movl %ebp, %esi
callq 0x1130
testl %eax, %eax
je 0x65d8
movq %rbx, %rdi
movq %r15, %rsi
leaq 0x6c08(%rip), %rdx      # 0xd0e0
movq %r14, %rcx
movl $0x2aa, %r8d            # imm = 0x2AA
callq 0x1bde
testl %eax, %eax
je 0x650d
movq (%rbx), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x650d
movq %rbx, %rdi
leaq 0x6be0(%rip), %rsi      # 0xd0e0
callq 0x18a9
testl %eax, %eax
jne 0x65c7
movq %rbx, %rdi
movq %r15, %rsi
leaq 0x6c06(%rip), %rdx      # 0xd120
movq %r14, %rcx
movl $0x2ab, %r8d            # imm = 0x2AB
callq 0x1bde
testl %eax, %eax
je 0x654b
movq (%rbx), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x654b
movq %rbx, %rdi
leaq 0x6bde(%rip), %rsi      # 0xd120
callq 0x18a9
testl %eax, %eax
jne 0x65c7
movq %rbx, %rdi
movq %r15, %rsi
leaq 0x6ce8(%rip), %rdx      # 0xd240
movq %r14, %rcx
movl $0x2ac, %r8d            # imm = 0x2AC
callq 0x1bde
testl %eax, %eax
je 0x6589
movq (%rbx), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x6589
movq %rbx, %rdi
leaq 0x6cc0(%rip), %rsi      # 0xd240
callq 0x18a9
testl %eax, %eax
jne 0x65c7
movq %rbx, %rdi
movq %r15, %rsi
leaq 0x6baa(%rip), %rdx      # 0xd140
movq %r14, %rcx
movl $0x2ad, %r8d            # imm = 0x2AD
callq 0x1bde
testl %eax, %eax
je 0x65e1
movq (%rbx), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x65e1
movq %rbx, %rdi
leaq 0x6b82(%rip), %rsi      # 0xd140
callq 0x18a9
testl %eax, %eax
je 0x65e1
movq 0x8(%rbx), %rdi
movl %r13d, %esi
callq 0x1f2b
movl $0x2, %ebp
movq (%rbx), %rax
movl %ebp, 0x1b8(%rax)
cmpl $0x0, 0x6dbc(%rip)      # 0xd3a4
je 0x6484
movq (%rbx), %rdi
cmpl $0x0, 0x1b4(%rdi)
jne 0x661f
addq $0xd0, %rdi
movl %r13d, %esi
callq 0x1130
testl %eax, %eax
jne 0x661f
movq (%rbx), %rax
movl $0x1, 0x1b4(%rax)
jmp 0x6484
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
movl $0x3, 0x1b8(%rax)
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
cmpl $0x0, 0x1b4(%rax)
jg 0x6657
movq (%r12), %rdi
callq 0x18f4
testl %eax, %eax
je 0x6679
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
movl 0x1b4(%rax), %ecx
movl %ecx, %edx
decl %edx
movl %edx, 0x1b4(%rax)
testl %ecx, %ecx
jg 0x6657
jmp 0x6635
movl $0xa, %edi
callq 0x1050
movl 0x6bd7(%rip), %esi      # 0xd260
movl %esi, %eax
incl %eax
movl %eax, 0x6bcd(%rip)      # 0xd260
leaq 0x412a(%rip), %rdi      # 0xa7c4
xorl %eax, %eax
callq 0x1080
movq (%r12), %rdi
leaq 0x3dec(%rip), %rbx      # 0xa498
movl $0x2b2, %edx            # imm = 0x2B2
movq %rbx, %rsi
callq 0x151a
leaq 0x6ce8(%rip), %r14      # 0xd3a8
leaq 0x69f9(%rip), %r15      # 0xd0c0
movq (%r12), %rdi
callq 0x12d2
movq %rax, %r13
movq %rax, %rdi
movq %r14, %rsi
movq %rbx, %rdx
movl $0x2b2, %ecx            # imm = 0x2B2
callq 0x1b4a
testl %eax, %eax
je 0x670f
movq (%r13), %rdi
cmpl $0x0, 0x1b4(%rdi)
je 0x670f
addq $0x8, %rdi
movl $0x1, %ebp
movl %ebp, %esi
callq 0x1130
testl %eax, %eax
je 0x67d7
movq %r13, %rdi
movq %r14, %rsi
movq %r15, %rdx
movq %rbx, %rcx
movl $0x2b3, %r8d            # imm = 0x2B3
callq 0x1bde
testl %eax, %eax
je 0x6746
movq (%r13), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x6746
movq %r13, %rdi
movq %r15, %rsi
callq 0x18a9
testl %eax, %eax
jne 0x67c4
movq %r13, %rdi
movq %r14, %rsi
leaq 0x69cd(%rip), %rdx      # 0xd120
movq %rbx, %rcx
movl $0x2b4, %r8d            # imm = 0x2B4
callq 0x1bde
testl %eax, %eax
je 0x6785
movq (%r13), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x6785
movq %r13, %rdi
leaq 0x69a4(%rip), %rsi      # 0xd120
callq 0x18a9
testl %eax, %eax
jne 0x67c4
movq %r13, %rdi
movq %r14, %rsi
leaq 0x694e(%rip), %rdx      # 0xd0e0
movq %rbx, %rcx
movl $0x2b5, %r8d            # imm = 0x2B5
callq 0x1bde
testl %eax, %eax
je 0x67e1
movq (%r13), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x67e1
movq %r13, %rdi
leaq 0x6925(%rip), %rsi      # 0xd0e0
callq 0x18a9
testl %eax, %eax
je 0x67e1
movq 0x8(%r13), %rdi
movl $0x1, %esi
callq 0x1f2b
movl $0x2, %ebp
movq (%r13), %rax
movl %ebp, 0x1b8(%rax)
cmpl $0x0, 0x6bc0(%rip)      # 0xd3a8
je 0x66c7
movq (%r13), %rdi
cmpl $0x0, 0x1b4(%rdi)
jne 0x6823
addq $0xd0, %rdi
movl $0x1, %esi
callq 0x1130
testl %eax, %eax
jne 0x6823
movq (%r13), %rax
movl $0x1, 0x1b4(%rax)
jmp 0x66c7
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
movl $0x3, 0x1b8(%rax)
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
cmpl $0x0, 0x1b4(%rax)
jg 0x685b
movq (%r12), %rdi
callq 0x18f4
testl %eax, %eax
je 0x687d
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
movl 0x1b4(%rax), %ecx
movl %ecx, %edx
decl %edx
movl %edx, 0x1b4(%rax)
testl %ecx, %ecx
jg 0x685b
jmp 0x6839
movl $0xa, %edi
callq 0x1050
movl 0x69d3(%rip), %esi      # 0xd260
movl %esi, %eax
incl %eax
movl %eax, 0x69c9(%rip)      # 0xd260
leaq 0x3f48(%rip), %rdi      # 0xa7e6
xorl %eax, %eax
movl $0x2be, %edx            # imm = 0x2BE
callq 0x1080
movq (%r12), %rdi
leaq 0x3be3(%rip), %r14      # 0xa498
movl $0x2bb, %edx            # imm = 0x2BB
movq %r14, %rsi
callq 0x151a
leaq 0x6ae3(%rip), %r15      # 0xd3ac
leaq 0x68f0(%rip), %r13      # 0xd1c0
movq (%r12), %rdi
callq 0x12d2
movq %rax, %rbx
movq %rax, %rdi
movq %r15, %rsi
movq %r14, %rdx
movl $0x2bb, %ecx            # imm = 0x2BB
callq 0x1b4a
testl %eax, %eax
je 0x6917
movq (%rbx), %rdi
cmpl $0x0, 0x1b4(%rdi)
je 0x6917
addq $0x8, %rdi
movl $0x1, %ebp
movl %ebp, %esi
callq 0x1130
testl %eax, %eax
je 0x6a16
movq %rbx, %rdi
movq %r15, %rsi
movq %r13, %rdx
movq %r14, %rcx
movl $0x2bc, %r8d            # imm = 0x2BC
callq 0x1bde
testl %eax, %eax
je 0x6951
movq (%rbx), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x6951
movq %rbx, %rdi
movq %r13, %rsi
callq 0x18a9
testl %eax, %eax
jne 0x6a03
movq %rbx, %rdi
movq %r15, %rsi
leaq 0x67c2(%rip), %rdx      # 0xd120
movq %r14, %rcx
movl $0x2bd, %r8d            # imm = 0x2BD
callq 0x1bde
testl %eax, %eax
je 0x698f
movq (%rbx), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x698f
movq %rbx, %rdi
leaq 0x679a(%rip), %rsi      # 0xd120
callq 0x18a9
testl %eax, %eax
jne 0x6a03
movq %rbx, %rdi
movq %r15, %rsi
movq %r13, %rdx
movq %r14, %rcx
movl $0x2be, %r8d            # imm = 0x2BE
callq 0x1bde
testl %eax, %eax
je 0x69c5
movq (%rbx), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x69c5
movq %rbx, %rdi
movq %r13, %rsi
callq 0x18a9
testl %eax, %eax
jne 0x6a03
movq %rbx, %rdi
movq %r15, %rsi
leaq 0x676e(%rip), %rdx      # 0xd140
movq %r14, %rcx
movl $0x2bf, %r8d            # imm = 0x2BF
callq 0x1bde
testl %eax, %eax
je 0x6a1f
movq (%rbx), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x6a1f
movq %rbx, %rdi
leaq 0x6746(%rip), %rsi      # 0xd140
callq 0x18a9
testl %eax, %eax
je 0x6a1f
movq 0x8(%rbx), %rdi
movl $0x1, %esi
callq 0x1f2b
movl $0x2, %ebp
movq (%rbx), %rax
movl %ebp, 0x1b8(%rax)
cmpl $0x0, 0x6986(%rip)      # 0xd3ac
je 0x68d0
movq (%rbx), %rdi
cmpl $0x0, 0x1b4(%rdi)
jne 0x6a5f
addq $0xd0, %rdi
movl $0x1, %esi
callq 0x1130
testl %eax, %eax
jne 0x6a5f
movq (%rbx), %rax
movl $0x1, 0x1b4(%rax)
jmp 0x68d0
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
movl $0x3, 0x1b8(%rax)
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
cmpl $0x0, 0x1b4(%rax)
jg 0x6a97
movq (%r12), %rdi
callq 0x18f4
testl %eax, %eax
je 0x6ab9
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
movl 0x1b4(%rax), %ecx
movl %ecx, %edx
decl %edx
movl %edx, 0x1b4(%rax)
testl %ecx, %ecx
jg 0x6a97
jmp 0x6a75
movl $0xa, %edi
callq 0x1050
movl 0x6797(%rip), %esi      # 0xd260
movl %esi, %eax
incl %eax
movl %eax, 0x678d(%rip)      # 0xd260
leaq 0x3d45(%rip), %rdi      # 0xa81f
xorl %eax, %eax
callq 0x1080
movq (%r12), %rdi
leaq 0x39ac(%rip), %rbx      # 0xa498
movl $0x2c4, %ebp            # imm = 0x2C4
movq %rbx, %rsi
movl %ebp, %edx
callq 0x151a
leaq 0x68ae(%rip), %r14      # 0xd3b0
movl $0x1, %r15d
movq (%r12), %rdi
callq 0x12d2
movq %rax, %r13
movq %rax, %rdi
movq %r14, %rsi
movq %rbx, %rdx
movl %ebp, %ecx
callq 0x1b4a
testl %eax, %eax
je 0x6b53
movq (%r13), %rdi
cmpl $0x0, 0x1b4(%rdi)
je 0x6b53
addq $0x8, %rdi
movl %r15d, %esi
callq 0x1130
testl %eax, %eax
jne 0x6b53
movq (%r13), %rax
movl $0x1, 0x1b8(%rax)
cmpl $0x0, 0x6856(%rip)      # 0xd3b0
je 0x6b08
movq (%r13), %rdi
cmpl $0x0, 0x1b4(%rdi)
jne 0x6b8f
addq $0xd0, %rdi
movl %r15d, %esi
callq 0x1130
testl %eax, %eax
jne 0x6b8f
movq (%r13), %rax
movl $0x1, 0x1b4(%rax)
jmp 0x6b08
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
movl $0x3, 0x1b8(%rax)
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
cmpl $0x0, 0x1b4(%rax)
jg 0x6bc7
movq (%r12), %rdi
callq 0x18f4
testl %eax, %eax
je 0x6be9
movq (%r12), %rdi
callq 0x12d2
movq (%rax), %rax
movl 0x1b4(%rax), %ecx
movl %ecx, %edx
decl %edx
movl %edx, 0x1b4(%rax)
testl %ecx, %ecx
jg 0x6bc7
jmp 0x6ba5
movl $0xa, %edi
callq 0x1050
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq