// File: /workspace/github_c_makefile_star2_O2/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 0x34778
movq %rax, 0x20(%rsp)
leaq 0x1b19a(%rip), %rsi     # 0x46d3f
leaq 0x1b196(%rip), %rdx     # 0x46d42
leaq 0x1e2f4(%rip), %rbx     # 0x49ea7
leaq 0x10(%rsp), %r15
movq %r15, %rdi
movq %rbx, %rcx
movq %r14, %r8
callq 0x13723
cmpb $0x0, (%r15)
je 0x2bcab
leaq 0x18(%rsp), %rdi
callq 0x2295e
movq %rsp, %rcx
andq $0x0, (%rcx)
leaq 0x1a7f3(%rip), %rsi     # 0x463db
leaq 0x1a1f2(%rip), %rdx     # 0x45de1
leaq 0x10(%rsp), %rbx
leaq 0x20(%rsp), %r8
movq %rbx, %rdi
callq 0x2d7ec
cmpb $0x0, (%rbx)
je 0x2bcec
leaq 0x18(%rsp), %rdi
callq 0x2295e
movq %rsp, %rcx
movl $0x3, (%rcx)
movq 0x20(%rsp), %r8
leaq 0x1b264(%rip), %rsi     # 0x46e8d
leaq 0x1b22e(%rip), %rdx     # 0x46e5e
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
callq 0x2e10f
cmpb $0x0, (%rbx)
je 0x2bd03
leaq 0x18(%rsp), %rdi
callq 0x2295e
movq %rsp, %rcx
andl $0x0, (%rcx)
movq 0x20(%rsp), %rax
xorl %r8d, %r8d
cmpl $0x3, (%rax)
cmoveq %rax, %r8
addq $0x8, %r8
leaq 0x19e98(%rip), %rsi     # 0x45b08
leaq 0x1b228(%rip), %rdx     # 0x46e9f
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
callq 0x287b5
cmpb $0x0, (%rbx)
jne 0x2bdd8
movq %rsp, %rdi
callq 0x11c8e
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x2bd9b
movq (%rax), %r8
jmp 0x2bda2
movq %rsp, %rdi
callq 0x11c8e
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x2bcc0
movq (%rax), %rbx
leaq 0x1b061(%rip), %rdx     # 0x46d28
leaq 0x8(%rsp), %rdi
pushq $0x2
popq %rsi
pushq $0x45
popq %rcx
movq %rbx, %r8
callq 0x104f8
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10576
jmp 0x2bd72
movq %rsp, %rdi
callq 0x11c8e
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x2bd1a
movq (%rax), %r8
jmp 0x2bd21
movq %rsp, %rdi
callq 0x11c8e
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x2bd47
movq (%rax), %r8
jmp 0x2bd4e
leaq 0x1e186(%rip), %r8      # 0x49ea7
leaq 0x1b000(%rip), %rdx     # 0x46d28
leaq 0x8(%rsp), %rdi
pushq $0x2
popq %rsi
pushq $0x46
popq %rcx
callq 0x104f8
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10576
jmp 0x2bd72
leaq 0x1e159(%rip), %r8      # 0x49ea7
leaq 0x1afd3(%rip), %rdx     # 0x46d28
leaq 0x8(%rsp), %rdi
pushq $0x2
popq %rsi
pushq $0x48
popq %rcx
callq 0x104f8
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10576
leaq 0x18(%rsp), %rbx
leaq 0x8(%rsp), %rdi
callq 0x10558
movq %rsp, %rdi
callq 0x1f8e0
movq %rbx, %rdi
callq 0x2295e
addq $0x30, %rsp
popq %rbx
popq %r14
popq %r15
retq
leaq 0x1e105(%rip), %r8      # 0x49ea7
leaq 0x1af7f(%rip), %rdx     # 0x46d28
leaq 0x8(%rsp), %rdi
pushq $0x2
popq %rsi
pushq $0x49
popq %rcx
callq 0x104f8
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10576
leaq 0x8(%rsp), %rdi
callq 0x10558
movq %rsp, %rdi
callq 0x1f8e0
leaq 0x18(%rsp), %rdi
jmp 0x2bd8c
jmp 0x2bdf1
jmp 0x2be00
jmp 0x2be0d
jmp 0x2bdf1
jmp 0x2be00
jmp 0x2be0d
jmp 0x2bdf1
jmp 0x2be00
jmp 0x2be0d
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x10558
jmp 0x2be03
movq %rax, %rbx
movq %rsp, %rdi
callq 0x1f8e0
jmp 0x2be10
movq %rax, %rbx
leaq 0x18(%rsp), %rdi
callq 0x2295e
movq %rbx, %rdi
callq 0xdbf0