// File: porzell[P]PTest/examples/custom_main_test.cpp
// Function: CanAddToVector6()
P_TEST(CanAddToVector) {
	std::vector<int> vec;
	vec.push_back(3);
	P_ASSERT(vec.size() == 1);
	vec.push_back(5);
	P_ASSERT(vec.size() == 2);
	vec.push_back(4);
	P_ASSERT(vec.size() == 3);
	vec.clear();
	// Assertion will fail.
	P_ASSERT(vec.size() != 0);
	// This will not run.
	printf("You shouldn't see me!\n");
	vec.push_back(4);
	P_ASSERT(vec.size() == 3);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x2c0, %rsp            # imm = 0x2C0
leaq -0x18(%rbp), %rdi
movq %rdi, -0x290(%rbp)
callq 0x64f0
movq -0x290(%rbp), %rdi
movl $0x3, -0x1c(%rbp)
leaq -0x1c(%rbp), %rsi
callq 0x6510
jmp 0x2554
leaq -0x18(%rbp), %rdi
callq 0x6540
subq $0x1, %rax
sete -0x2d(%rbp)
callq 0x3020
movq %rax, -0x298(%rbp)
jmp 0x2573
movzbl -0x2d(%rbp), %esi
andl $0x1, %esi
leaq 0x6b53(%rip), %rdx      # 0x90d4
leaq 0x6b6a(%rip), %r8       # 0x90f2
xorl %eax, %eax
movl %eax, %r9d
leaq -0xa0(%rbp), %rdi
movl $0x9, %ecx
callq 0x66a0
jmp 0x25a0
movq -0x298(%rbp), %rdi
leaq -0xa0(%rbp), %rsi
xorl %edx, %edx
callq 0x6560
jmp 0x25b7
leaq -0xa0(%rbp), %rdi
callq 0x59b0
testb $0x1, -0x2d(%rbp)
jne 0x2606
movl $0x1, -0xa4(%rbp)
jmp 0x2928
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x293a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0xa0(%rbp), %rdi
callq 0x59b0
jmp 0x293a
movl $0x5, -0xa8(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0xa8(%rbp), %rsi
callq 0x6510
jmp 0x2622
leaq -0x18(%rbp), %rdi
callq 0x6540
subq $0x2, %rax
sete -0xa9(%rbp)
callq 0x3020
movq %rax, -0x2a0(%rbp)
jmp 0x2644
movzbl -0xa9(%rbp), %esi
andl $0x1, %esi
leaq 0x6a7f(%rip), %rdx      # 0x90d4
leaq 0x6aa6(%rip), %r8       # 0x9102
xorl %eax, %eax
movl %eax, %r9d
leaq -0x120(%rbp), %rdi
movl $0xb, %ecx
callq 0x66a0
jmp 0x2674
movq -0x2a0(%rbp), %rdi
leaq -0x120(%rbp), %rsi
xorl %edx, %edx
callq 0x6560
jmp 0x268b
leaq -0x120(%rbp), %rdi
callq 0x59b0
testb $0x1, -0xa9(%rbp)
jne 0x26cc
movl $0x1, -0xa4(%rbp)
jmp 0x2928
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x120(%rbp), %rdi
callq 0x59b0
jmp 0x293a
movl $0x4, -0x124(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0x124(%rbp), %rsi
callq 0x6510
jmp 0x26e8
leaq -0x18(%rbp), %rdi
callq 0x6540
subq $0x3, %rax
sete -0x125(%rbp)
callq 0x3020
movq %rax, -0x2a8(%rbp)
jmp 0x270a
movzbl -0x125(%rbp), %esi
andl $0x1, %esi
leaq 0x69b9(%rip), %rdx      # 0x90d4
leaq 0x69f0(%rip), %r8       # 0x9112
xorl %eax, %eax
movl %eax, %r9d
leaq -0x198(%rbp), %rdi
movl $0xd, %ecx
callq 0x66a0
jmp 0x273a
movq -0x2a8(%rbp), %rdi
leaq -0x198(%rbp), %rsi
xorl %edx, %edx
callq 0x6560
jmp 0x2751
leaq -0x198(%rbp), %rdi
callq 0x59b0
testb $0x1, -0x125(%rbp)
jne 0x2792
movl $0x1, -0xa4(%rbp)
jmp 0x2928
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x198(%rbp), %rdi
callq 0x59b0
jmp 0x293a
leaq -0x18(%rbp), %rdi
movq %rdi, -0x2b8(%rbp)
callq 0x67f0
movq -0x2b8(%rbp), %rdi
callq 0x6540
testq %rax, %rax
setne -0x199(%rbp)
callq 0x3020
movq %rax, -0x2b0(%rbp)
jmp 0x27c6
movzbl -0x199(%rbp), %esi
andl $0x1, %esi
leaq 0x68fd(%rip), %rdx      # 0x90d4
leaq 0x6944(%rip), %r8       # 0x9122
xorl %eax, %eax
movl %eax, %r9d
leaq -0x210(%rbp), %rdi
movl $0x10, %ecx
callq 0x66a0
jmp 0x27f6
movq -0x2b0(%rbp), %rdi
leaq -0x210(%rbp), %rsi
xorl %edx, %edx
callq 0x6560
jmp 0x280d
leaq -0x210(%rbp), %rdi
callq 0x59b0
testb $0x1, -0x199(%rbp)
jne 0x284e
movl $0x1, -0xa4(%rbp)
jmp 0x2928
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x210(%rbp), %rdi
callq 0x59b0
jmp 0x293a
leaq 0x68dd(%rip), %rdi      # 0x9132
xorl %eax, %eax
callq 0x2040
jmp 0x285e
movl $0x4, -0x214(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0x214(%rbp), %rsi
callq 0x6510
jmp 0x287a
leaq -0x18(%rbp), %rdi
callq 0x6540
subq $0x3, %rax
sete -0x215(%rbp)
callq 0x3020
movq %rax, -0x2c0(%rbp)
jmp 0x289c
movzbl -0x215(%rbp), %esi
andl $0x1, %esi
leaq 0x6827(%rip), %rdx      # 0x90d4
leaq 0x685e(%rip), %r8       # 0x9112
xorl %eax, %eax
movl %eax, %r9d
leaq -0x288(%rbp), %rdi
movl $0x14, %ecx
callq 0x66a0
jmp 0x28cc
movq -0x2c0(%rbp), %rdi
leaq -0x288(%rbp), %rsi
xorl %edx, %edx
callq 0x6560
jmp 0x28e3
leaq -0x288(%rbp), %rdi
callq 0x59b0
testb $0x1, -0x215(%rbp)
jne 0x291e
movl $0x1, -0xa4(%rbp)
jmp 0x2928
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x288(%rbp), %rdi
callq 0x59b0
jmp 0x293a
movl $0x0, -0xa4(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x6810
addq $0x2c0, %rsp            # imm = 0x2C0
popq %rbp
retq
leaq -0x18(%rbp), %rdi
callq 0x6810
movq -0x28(%rbp), %rdi
callq 0x2240
nopl (%rax)