// File: /workspace/github_c_makefile_star2_O1/deplinenoise[P]tundra/unittest/Test_Json.cpp
// Function: JsonTest_EmptyArray_Test::TestBody()
TEST_F(JsonTest, EmptyArray)
{
  char input[] = "[]";
  const JsonValue* v = JsonParse(input, &alloc, &scratch, error_msg);

  ASSERT_STREQ("", error_msg);
  ASSERT_NE(nullptr, v);

  ASSERT_EQ(JsonValue::kArray, v->m_Type);
  ASSERT_EQ(0, v->AsArray()->m_Count);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x30, %rsp
leaq 0x2c(%rsp), %rax
movb $0x0, 0x2(%rax)
movw $0x5d5b, (%rax)         # imm = 0x5D5B
leaq 0x18(%rdi), %rsi
leaq 0x50(%rdi), %rdx
leaq 0x88(%rdi), %r14
movq %rax, %rdi
movq %r14, %rcx
callq 0x42144
movq %rax, 0x20(%rsp)
leaq 0x1e6d6(%rip), %rsi     # 0x55d2f
leaq 0x1e6d2(%rip), %rdx     # 0x55d32
leaq 0x217ec(%rip), %rbx     # 0x58e53
leaq 0x10(%rsp), %r15
movq %r15, %rdi
movq %rbx, %rcx
movq %r14, %r8
callq 0x150d6
cmpb $0x0, (%r15)
je 0x3776b
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
callq 0x2c81c
movq %rsp, %rcx
movq $0x0, (%rcx)
leaq 0x1dd3a(%rip), %rsi     # 0x553db
leaq 0x1d739(%rip), %rdx     # 0x54de1
leaq 0x10(%rsp), %rbx
leaq 0x20(%rsp), %r8
movq %rbx, %rdi
callq 0x3a063
cmpb $0x0, (%rbx)
je 0x377f2
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
callq 0x2c81c
movq %rsp, %rcx
movl $0x3, (%rcx)
movq 0x20(%rsp), %r8
leaq 0x1e799(%rip), %rsi     # 0x55e7d
leaq 0x1e763(%rip), %rdx     # 0x55e4e
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
callq 0x3aaac
cmpb $0x0, (%rbx)
je 0x37809
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
callq 0x2c81c
movq %rsp, %rcx
movl $0x0, (%rcx)
movq 0x20(%rsp), %rax
xorl %r8d, %r8d
cmpl $0x3, (%rax)
cmoveq %rax, %r8
addq $0x8, %r8
leaq 0x1d3d8(%rip), %rsi     # 0x54b08
leaq 0x1e758(%rip), %rdx     # 0x55e8f
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
callq 0x3352d
cmpb $0x0, (%rbx)
jne 0x3796e
movq %rsp, %rdi
callq 0x12eee
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x37909
movq (%rax), %r8
jmp 0x37910
movq %rsp, %rdi
callq 0x12eee
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x37780
movq (%rax), %rbx
leaq 0x1e591(%rip), %rdx     # 0x55d18
leaq 0x8(%rsp), %rdi
movl $0x2, %esi
movl $0x45, %ecx
movq %rbx, %r8
callq 0x10bb8
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10c56
leaq 0x8(%rsp), %rdi
callq 0x10c24
cmpq $0x0, (%rsp)
je 0x377e1
movl $0x1, %edi
callq 0x10bb4
testb %al, %al
je 0x377d9
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x377d9
movq (%rdi), %rax
callq *0x8(%rax)
movq $0x0, (%rsp)
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
callq 0x2c81c
jmp 0x3797a
movq %rsp, %rdi
callq 0x12eee
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x37820
movq (%rax), %r8
jmp 0x37827
movq %rsp, %rdi
callq 0x12eee
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x37896
movq (%rax), %r8
jmp 0x3789d
leaq 0x2162c(%rip), %r8      # 0x58e53
leaq 0x1e4ea(%rip), %rdx     # 0x55d18
leaq 0x8(%rsp), %rdi
movl $0x2, %esi
movl $0x46, %ecx
callq 0x10bb8
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10c56
leaq 0x8(%rsp), %rdi
callq 0x10c24
cmpq $0x0, (%rsp)
je 0x37885
movl $0x1, %edi
callq 0x10bb4
testb %al, %al
je 0x3787d
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x3787d
movq (%rdi), %rax
callq *0x8(%rax)
movq $0x0, (%rsp)
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
callq 0x2c81c
jmp 0x3797a
leaq 0x215b6(%rip), %r8      # 0x58e53
leaq 0x1e474(%rip), %rdx     # 0x55d18
leaq 0x8(%rsp), %rdi
movl $0x2, %esi
movl $0x48, %ecx
callq 0x10bb8
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10c56
leaq 0x8(%rsp), %rdi
callq 0x10c24
cmpq $0x0, (%rsp)
je 0x378fb
movl $0x1, %edi
callq 0x10bb4
testb %al, %al
je 0x378f3
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x378f3
movq (%rdi), %rax
callq *0x8(%rax)
movq $0x0, (%rsp)
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
callq 0x2c81c
jmp 0x3797a
leaq 0x21543(%rip), %r8      # 0x58e53
leaq 0x1e401(%rip), %rdx     # 0x55d18
leaq 0x8(%rsp), %rdi
movl $0x2, %esi
movl $0x49, %ecx
callq 0x10bb8
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10c56
leaq 0x8(%rsp), %rdi
callq 0x10c24
cmpq $0x0, (%rsp)
je 0x3796e
movl $0x1, %edi
callq 0x10bb4
testb %al, %al
je 0x37966
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x37966
movq (%rdi), %rax
callq *0x8(%rax)
movq $0x0, (%rsp)
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
callq 0x2c81c
addq $0x30, %rsp
popq %rbx
popq %r14
popq %r15
retq
jmp 0x379db
jmp 0x379aa
jmp 0x379b9
jmp 0x379c6
jmp 0x379db
jmp 0x379db
jmp 0x379db
jmp 0x379aa
jmp 0x379b9
jmp 0x379c6
jmp 0x379db
jmp 0x379db
jmp 0x379db
jmp 0x379aa
jmp 0x379b9
jmp 0x379c6
jmp 0x379db
jmp 0x379db
jmp 0x379db
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x10c24
jmp 0x379bc
movq %rax, %rbx
movq %rsp, %rdi
callq 0x31faa
jmp 0x379c9
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x31fbc
movq %rbx, %rdi
callq 0xcbb0
movq %rax, %rdi
callq 0x28baf
nop