#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
int /*<<< orphan*/ checkResults(char *, char *, char *, int);
void testBrackets() {
  checkResults("",
               "1:0:BEGIN~EOF~\n"
               "1:0:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               145);
  checkResults(";",
               "1:0:BEGIN~EOF~\n"
               "1:1:BEGIN~;~\n"
               "1:1:END~;~\n"
               "1:1:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               149);
  checkResults("{}",
               "1:0:BEGIN~EOF~\n"
               "1:1:BEGIN~;~\n"
               "1:1:BEGIN~{~\n"
               "1:2:END~{~\n"
               "1:2:END_MISSING~;~\n"
               "1:2:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               155);
  checkResults("[]",
               "1:0:BEGIN~EOF~\n"
               "1:1:BEGIN~;~\n"
               "1:1:BEGIN~[~\n"
               "1:2:END~[~\n"
               "1:2:END_MISSING~;~\n"
               "1:2:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               163);
  checkResults("()",
               "1:0:BEGIN~EOF~\n"
               "1:1:BEGIN~;~\n"
               "1:1:BEGIN~(~\n"
               "1:2:END~(~\n"
               "1:2:END_MISSING~;~\n"
               "1:2:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               171);
  checkResults("{};",
               "1:0:BEGIN~EOF~\n"
               "1:1:BEGIN~;~\n"
               "1:1:BEGIN~{~\n"
               "1:2:END~{~\n"
               "1:3:END~;~\n"
               "1:3:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               179);
  checkResults("[];",
               "1:0:BEGIN~EOF~\n"
               "1:1:BEGIN~;~\n"
               "1:1:BEGIN~[~\n"
               "1:2:END~[~\n"
               "1:3:END~;~\n"
               "1:3:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               187);
  checkResults("();",
               "1:0:BEGIN~EOF~\n"
               "1:1:BEGIN~;~\n"
               "1:1:BEGIN~(~\n"
               "1:2:END~(~\n"
               "1:3:END~;~\n"
               "1:3:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               195);
  checkResults("(;);",
               "1:0:BEGIN~EOF~\n"
               "1:1:BEGIN~;~\n"
               "1:1:BEGIN~(~\n"
               "1:2:BEGIN~;~\n"
               "1:2:END~;~\n"
               "1:3:END~(~\n"
               "1:4:END~;~\n"
               "1:4:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               203);
  checkResults("(;",
               "1:0:BEGIN~EOF~\n"
               "1:1:BEGIN~;~\n"
               "1:1:BEGIN~(~\n"
               "1:2:BEGIN~;~\n"
               "1:2:END~;~\n"
               "1:2:END_MISSING~(~\n"
               "1:2:END_MISSING~;~\n"
               "1:2:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               213);
  checkResults("{};{};",
               "1:0:BEGIN~EOF~\n"
               "1:1:BEGIN~;~\n"
               "1:1:BEGIN~{~\n"
               "1:2:END~{~\n"
               "1:3:END~;~\n"
               "1:4:BEGIN~;~\n"
               "1:4:BEGIN~{~\n"
               "1:5:END~{~\n"
               "1:6:END~;~\n"
               "1:6:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               223);
  checkResults("{}{};",
               "1:0:BEGIN~EOF~\n"
               "1:1:BEGIN~;~\n"
               "1:1:BEGIN~{~\n"
               "1:2:END~{~\n"
               "1:3:BEGIN~{~\n"
               "1:4:END~{~\n"
               "1:5:END~;~\n"
               "1:5:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               235);
  checkResults("{}{}",
               "1:0:BEGIN~EOF~\n"
               "1:1:BEGIN~;~\n"
               "1:1:BEGIN~{~\n"
               "1:2:END~{~\n"
               "1:3:BEGIN~{~\n"
               "1:4:END~{~\n"
               "1:4:END_MISSING~;~\n"
               "1:4:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               245);
  checkResults("{[();];};",
               "1:0:BEGIN~EOF~\n"
               "1:1:BEGIN~;~\n"
               "1:1:BEGIN~{~\n"
               "1:2:BEGIN~;~\n"
               "1:2:BEGIN~[~\n"
               "1:3:BEGIN~;~\n"
               "1:3:BEGIN~(~\n"
               "1:4:END~(~\n"
               "1:5:END~;~\n"
               "1:6:END~[~\n"
               "1:7:END~;~\n"
               "1:8:END~{~\n"
               "1:9:END~;~\n"
               "1:9:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               255);
  checkResults("{[();;};",
               "1:0:BEGIN~EOF~\n"
               "1:1:BEGIN~;~\n"
               "1:1:BEGIN~{~\n"
               "1:2:BEGIN~;~\n"
               "1:2:BEGIN~[~\n"
               "1:3:BEGIN~;~\n"
               "1:3:BEGIN~(~\n"
               "1:4:END~(~\n"
               "1:5:END~;~\n"
               "1:6:BEGIN~;~\n"
               "1:6:END~;~\n"
               "1:7:END_MISSING~[~\n"
               "1:7:END_MISSING~;~\n"
               "1:7:END~{~\n"
               "1:8:END~;~\n"
               "1:8:END~EOF~\n",
               "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/"
               "outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/"
               "heads/master/test/BracketStreamTest.c",
               271);
}


x86 assembly (clang, -O0):
<testBrackets>:
push   %rbp
mov    %rsp,%rbp
lea    0xf01(%rip),%rdi
lea    0xede(%rip),%rsi
lea    0xef4(%rip),%rdx
mov    $0x91,%ecx
call   1030 <checkResults@plt>
lea    0x1211(%rip),%rdi
lea    0xf76(%rip),%rsi
lea    0xed5(%rip),%rdx
mov    $0x95,%ecx
call   1030 <checkResults@plt>
lea    0x135a(%rip),%rdi
lea    0xf8c(%rip),%rsi
lea    0xeb6(%rip),%rdx
mov    $0x9b,%ecx
call   1030 <checkResults@plt>
lea    0xfc9(%rip),%rdi
lea    0xfc5(%rip),%rsi
lea    0xe97(%rip),%rdx
mov    $0xa3,%ecx
call   1030 <checkResults@plt>
lea    0x1002(%rip),%rdi
lea    0xffe(%rip),%rsi
lea    0xe78(%rip),%rdx
mov    $0xab,%ecx
call   1030 <checkResults@plt>
lea    0x120f(%rip),%rdi
lea    0x1034(%rip),%rsi
lea    0xe59(%rip),%rdx
mov    $0xb3,%ecx
call   1030 <checkResults@plt>
lea    0x1069(%rip),%rdi
lea    0x1066(%rip),%rsi
lea    0xe3a(%rip),%rdx
mov    $0xbb,%ecx
call   1030 <checkResults@plt>
lea    0x109b(%rip),%rdi
lea    0x1098(%rip),%rsi
lea    0xe1b(%rip),%rdx
mov    $0xc3,%ecx
call   1030 <checkResults@plt>
lea    0x10cd(%rip),%rdi
lea    0x10cb(%rip),%rsi
lea    0xdfc(%rip),%rdx
mov    $0xcb,%ecx
call   1030 <checkResults@plt>
lea    0x1118(%rip),%rdi
lea    0x1114(%rip),%rsi
lea    0xddd(%rip),%rdx
mov    $0xd5,%ecx
call   1030 <checkResults@plt>
lea    0x1171(%rip),%rdi
lea    0x1171(%rip),%rsi
lea    0xdbe(%rip),%rdx
mov    $0xdf,%ecx
call   1030 <checkResults@plt>
lea    0x11d6(%rip),%rdi
lea    0x11d5(%rip),%rsi
lea    0xd9f(%rip),%rdx
mov    $0xeb,%ecx
call   1030 <checkResults@plt>
lea    0x1222(%rip),%rdi
lea    0x1220(%rip),%rsi
lea    0xd80(%rip),%rdx
mov    $0xf5,%ecx
call   1030 <checkResults@plt>
lea    0x1275(%rip),%rdi
lea    0x1278(%rip),%rsi
lea    0xd61(%rip),%rdx
mov    $0xff,%ecx
call   1030 <checkResults@plt>
lea    0x130d(%rip),%rdi
lea    0x130f(%rip),%rsi
lea    0xd42(%rip),%rdx
mov    $0x10f,%ecx
call   1030 <checkResults@plt>
pop    %rbp
ret

x86 assembly (clang, -O2):
<testBrackets>:
push   %rbx
lea    0xf04(%rip),%rdi
lea    0xee1(%rip),%rsi
lea    0xef7(%rip),%rbx
mov    %rbx,%rdx
mov    $0x91,%ecx
call   1030 <checkResults@plt>
lea    0x1211(%rip),%rdi
lea    0xf76(%rip),%rsi
mov    %rbx,%rdx
mov    $0x95,%ecx
call   1030 <checkResults@plt>
lea    0x135e(%rip),%rdi
lea    0xf90(%rip),%rsi
mov    %rbx,%rdx
mov    $0x9b,%ecx
call   1030 <checkResults@plt>
lea    0xfd1(%rip),%rdi
lea    0xfcd(%rip),%rsi
mov    %rbx,%rdx
mov    $0xa3,%ecx
call   1030 <checkResults@plt>
lea    0x100e(%rip),%rdi
lea    0x100a(%rip),%rsi
mov    %rbx,%rdx
mov    $0xab,%ecx
call   1030 <checkResults@plt>
lea    0x121f(%rip),%rdi
lea    0x1044(%rip),%rsi
mov    %rbx,%rdx
mov    $0xb3,%ecx
call   1030 <checkResults@plt>
lea    0x107d(%rip),%rdi
lea    0x107a(%rip),%rsi
mov    %rbx,%rdx
mov    $0xbb,%ecx
call   1030 <checkResults@plt>
lea    0x10b3(%rip),%rdi
lea    0x10b0(%rip),%rsi
mov    %rbx,%rdx
mov    $0xc3,%ecx
call   1030 <checkResults@plt>
lea    0x10e9(%rip),%rdi
lea    0x10e7(%rip),%rsi
mov    %rbx,%rdx
mov    $0xcb,%ecx
call   1030 <checkResults@plt>
lea    0x1138(%rip),%rdi
lea    0x1134(%rip),%rsi
mov    %rbx,%rdx
mov    $0xd5,%ecx
call   1030 <checkResults@plt>
lea    0x1195(%rip),%rdi
lea    0x1195(%rip),%rsi
mov    %rbx,%rdx
mov    $0xdf,%ecx
call   1030 <checkResults@plt>
lea    0x11fe(%rip),%rdi
lea    0x11fd(%rip),%rsi
mov    %rbx,%rdx
mov    $0xeb,%ecx
call   1030 <checkResults@plt>
lea    0x124e(%rip),%rdi
lea    0x124c(%rip),%rsi
mov    %rbx,%rdx
mov    $0xf5,%ecx
call   1030 <checkResults@plt>
lea    0x12a5(%rip),%rdi
lea    0x12a8(%rip),%rsi
mov    %rbx,%rdx
mov    $0xff,%ecx
call   1030 <checkResults@plt>
lea    0x1341(%rip),%rdi
lea    0x1343(%rip),%rsi
mov    %rbx,%rdx
mov    $0x10f,%ecx
pop    %rbx
jmp    1030 <checkResults@plt>

LLVM IR (-O0):
@.str = [1 x i8] zeroinitializer
@.str.1 = [29 x i8] c"1:0:BEGIN~EOF~\0A1:0:END~EOF~\0A\00"
@.str.2 = [154 x i8] c"/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/heads/master/test/BracketStreamTest.c\00"
@.str.3 = [2 x i8] c";\00"
@.str.4 = [53 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:END~;~\0A1:1:END~EOF~\0A\00"
@.str.5 = [3 x i8] c"{}\00"
@.str.6 = [85 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~{~\0A1:2:END~{~\0A1:2:END_MISSING~;~\0A1:2:END~EOF~\0A\00"
@.str.7 = [3 x i8] c"[]\00"
@.str.8 = [85 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~[~\0A1:2:END~[~\0A1:2:END_MISSING~;~\0A1:2:END~EOF~\0A\00"
@.str.9 = [3 x i8] c"()\00"
@.str.10 = [85 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~(~\0A1:2:END~(~\0A1:2:END_MISSING~;~\0A1:2:END~EOF~\0A\00"
@.str.11 = [4 x i8] c"{};\00"
@.str.12 = [77 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~{~\0A1:2:END~{~\0A1:3:END~;~\0A1:3:END~EOF~\0A\00"
@.str.13 = [4 x i8] c"[];\00"
@.str.14 = [77 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~[~\0A1:2:END~[~\0A1:3:END~;~\0A1:3:END~EOF~\0A\00"
@.str.15 = [4 x i8] c"();\00"
@.str.16 = [77 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~(~\0A1:2:END~(~\0A1:3:END~;~\0A1:3:END~EOF~\0A\00"
@.str.17 = [5 x i8] c"(;);\00"
@.str.18 = [101 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~(~\0A1:2:BEGIN~;~\0A1:2:END~;~\0A1:3:END~(~\0A1:4:END~;~\0A1:4:END~EOF~\0A\00"
@.str.19 = [3 x i8] c"(;\00"
@.str.20 = [117 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~(~\0A1:2:BEGIN~;~\0A1:2:END~;~\0A1:2:END_MISSING~(~\0A1:2:END_MISSING~;~\0A1:2:END~EOF~\0A\00"
@.str.21 = [7 x i8] c"{};{};\00"
@.str.22 = [125 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~{~\0A1:2:END~{~\0A1:3:END~;~\0A1:4:BEGIN~;~\0A1:4:BEGIN~{~\0A1:5:END~{~\0A1:6:END~;~\0A1:6:END~EOF~\0A\00"
@.str.23 = [6 x i8] c"{}{};\00"
@.str.24 = [101 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~{~\0A1:2:END~{~\0A1:3:BEGIN~{~\0A1:4:END~{~\0A1:5:END~;~\0A1:5:END~EOF~\0A\00"
@.str.25 = [5 x i8] c"{}{}\00"
@.str.26 = [109 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~{~\0A1:2:END~{~\0A1:3:BEGIN~{~\0A1:4:END~{~\0A1:4:END_MISSING~;~\0A1:4:END~EOF~\0A\00"
@.str.27 = [10 x i8] c"{[();];};\00"
@.str.28 = [173 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~{~\0A1:2:BEGIN~;~\0A1:2:BEGIN~[~\0A1:3:BEGIN~;~\0A1:3:BEGIN~(~\0A1:4:END~(~\0A1:5:END~;~\0A1:6:END~[~\0A1:7:END~;~\0A1:8:END~{~\0A1:9:END~;~\0A1:9:END~EOF~\0A\00"
@.str.29 = [9 x i8] c"{[();;};\00"
@.str.30 = [213 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~{~\0A1:2:BEGIN~;~\0A1:2:BEGIN~[~\0A1:3:BEGIN~;~\0A1:3:BEGIN~(~\0A1:4:END~(~\0A1:5:END~;~\0A1:6:BEGIN~;~\0A1:6:END~;~\0A1:7:END_MISSING~[~\0A1:7:END_MISSING~;~\0A1:7:END~{~\0A1:8:END~;~\0A1:8:END~EOF~\0A\00"
define void @testBrackets() {
%1 = call i32 @checkResults(i8* getelementptr inbounds ([1 x i8], [1 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.1, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 145)
%2 = call i32 @checkResults(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([53 x i8], [53 x i8]* @.str.4, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 149)
%3 = call i32 @checkResults(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.5, i64 0, i64 0), i8* getelementptr inbounds ([85 x i8], [85 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 155)
%4 = call i32 @checkResults(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.7, i64 0, i64 0), i8* getelementptr inbounds ([85 x i8], [85 x i8]* @.str.8, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 163)
%5 = call i32 @checkResults(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.9, i64 0, i64 0), i8* getelementptr inbounds ([85 x i8], [85 x i8]* @.str.10, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 171)
%6 = call i32 @checkResults(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.11, i64 0, i64 0), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @.str.12, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 179)
%7 = call i32 @checkResults(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.13, i64 0, i64 0), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @.str.14, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 187)
%8 = call i32 @checkResults(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.15, i64 0, i64 0), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @.str.16, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 195)
%9 = call i32 @checkResults(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.17, i64 0, i64 0), i8* getelementptr inbounds ([101 x i8], [101 x i8]* @.str.18, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 203)
%10 = call i32 @checkResults(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.19, i64 0, i64 0), i8* getelementptr inbounds ([117 x i8], [117 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 213)
%11 = call i32 @checkResults(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([125 x i8], [125 x i8]* @.str.22, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 223)
%12 = call i32 @checkResults(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.23, i64 0, i64 0), i8* getelementptr inbounds ([101 x i8], [101 x i8]* @.str.24, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 235)
%13 = call i32 @checkResults(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.25, i64 0, i64 0), i8* getelementptr inbounds ([109 x i8], [109 x i8]* @.str.26, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 245)
%14 = call i32 @checkResults(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.27, i64 0, i64 0), i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.28, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 255)
%15 = call i32 @checkResults(i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.29, i64 0, i64 0), i8* getelementptr inbounds ([213 x i8], [213 x i8]* @.str.30, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 271)
ret void
}

LLVM IR (-O2):
@.str = [1 x i8] zeroinitializer
@.str.1 = [29 x i8] c"1:0:BEGIN~EOF~\0A1:0:END~EOF~\0A\00"
@.str.2 = [154 x i8] c"/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/2022-01-22/02-19-57/repos/jasonxhill/okavangoc/refs/heads/master/test/BracketStreamTest.c\00"
@.str.3 = [2 x i8] c";\00"
@.str.4 = [53 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:END~;~\0A1:1:END~EOF~\0A\00"
@.str.5 = [3 x i8] c"{}\00"
@.str.6 = [85 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~{~\0A1:2:END~{~\0A1:2:END_MISSING~;~\0A1:2:END~EOF~\0A\00"
@.str.7 = [3 x i8] c"[]\00"
@.str.8 = [85 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~[~\0A1:2:END~[~\0A1:2:END_MISSING~;~\0A1:2:END~EOF~\0A\00"
@.str.9 = [3 x i8] c"()\00"
@.str.10 = [85 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~(~\0A1:2:END~(~\0A1:2:END_MISSING~;~\0A1:2:END~EOF~\0A\00"
@.str.11 = [4 x i8] c"{};\00"
@.str.12 = [77 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~{~\0A1:2:END~{~\0A1:3:END~;~\0A1:3:END~EOF~\0A\00"
@.str.13 = [4 x i8] c"[];\00"
@.str.14 = [77 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~[~\0A1:2:END~[~\0A1:3:END~;~\0A1:3:END~EOF~\0A\00"
@.str.15 = [4 x i8] c"();\00"
@.str.16 = [77 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~(~\0A1:2:END~(~\0A1:3:END~;~\0A1:3:END~EOF~\0A\00"
@.str.17 = [5 x i8] c"(;);\00"
@.str.18 = [101 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~(~\0A1:2:BEGIN~;~\0A1:2:END~;~\0A1:3:END~(~\0A1:4:END~;~\0A1:4:END~EOF~\0A\00"
@.str.19 = [3 x i8] c"(;\00"
@.str.20 = [117 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~(~\0A1:2:BEGIN~;~\0A1:2:END~;~\0A1:2:END_MISSING~(~\0A1:2:END_MISSING~;~\0A1:2:END~EOF~\0A\00"
@.str.21 = [7 x i8] c"{};{};\00"
@.str.22 = [125 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~{~\0A1:2:END~{~\0A1:3:END~;~\0A1:4:BEGIN~;~\0A1:4:BEGIN~{~\0A1:5:END~{~\0A1:6:END~;~\0A1:6:END~EOF~\0A\00"
@.str.23 = [6 x i8] c"{}{};\00"
@.str.24 = [101 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~{~\0A1:2:END~{~\0A1:3:BEGIN~{~\0A1:4:END~{~\0A1:5:END~;~\0A1:5:END~EOF~\0A\00"
@.str.25 = [5 x i8] c"{}{}\00"
@.str.26 = [109 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~{~\0A1:2:END~{~\0A1:3:BEGIN~{~\0A1:4:END~{~\0A1:4:END_MISSING~;~\0A1:4:END~EOF~\0A\00"
@.str.27 = [10 x i8] c"{[();];};\00"
@.str.28 = [173 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~{~\0A1:2:BEGIN~;~\0A1:2:BEGIN~[~\0A1:3:BEGIN~;~\0A1:3:BEGIN~(~\0A1:4:END~(~\0A1:5:END~;~\0A1:6:END~[~\0A1:7:END~;~\0A1:8:END~{~\0A1:9:END~;~\0A1:9:END~EOF~\0A\00"
@.str.29 = [9 x i8] c"{[();;};\00"
@.str.30 = [213 x i8] c"1:0:BEGIN~EOF~\0A1:1:BEGIN~;~\0A1:1:BEGIN~{~\0A1:2:BEGIN~;~\0A1:2:BEGIN~[~\0A1:3:BEGIN~;~\0A1:3:BEGIN~(~\0A1:4:END~(~\0A1:5:END~;~\0A1:6:BEGIN~;~\0A1:6:END~;~\0A1:7:END_MISSING~[~\0A1:7:END_MISSING~;~\0A1:7:END~{~\0A1:8:END~;~\0A1:8:END~EOF~\0A\00"
define void @testBrackets() {
%1 = tail call i32 @checkResults(i8* getelementptr inbounds ([1 x i8], [1 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.1, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 145)
%2 = tail call i32 @checkResults(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([53 x i8], [53 x i8]* @.str.4, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 149)
%3 = tail call i32 @checkResults(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.5, i64 0, i64 0), i8* getelementptr inbounds ([85 x i8], [85 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 155)
%4 = tail call i32 @checkResults(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.7, i64 0, i64 0), i8* getelementptr inbounds ([85 x i8], [85 x i8]* @.str.8, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 163)
%5 = tail call i32 @checkResults(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.9, i64 0, i64 0), i8* getelementptr inbounds ([85 x i8], [85 x i8]* @.str.10, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 171)
%6 = tail call i32 @checkResults(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.11, i64 0, i64 0), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @.str.12, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 179)
%7 = tail call i32 @checkResults(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.13, i64 0, i64 0), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @.str.14, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 187)
%8 = tail call i32 @checkResults(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.15, i64 0, i64 0), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @.str.16, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 195)
%9 = tail call i32 @checkResults(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.17, i64 0, i64 0), i8* getelementptr inbounds ([101 x i8], [101 x i8]* @.str.18, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 203)
%10 = tail call i32 @checkResults(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.19, i64 0, i64 0), i8* getelementptr inbounds ([117 x i8], [117 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 213)
%11 = tail call i32 @checkResults(i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([125 x i8], [125 x i8]* @.str.22, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 223)
%12 = tail call i32 @checkResults(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.23, i64 0, i64 0), i8* getelementptr inbounds ([101 x i8], [101 x i8]* @.str.24, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 235)
%13 = tail call i32 @checkResults(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.25, i64 0, i64 0), i8* getelementptr inbounds ([109 x i8], [109 x i8]* @.str.26, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 245)
%14 = tail call i32 @checkResults(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.27, i64 0, i64 0), i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.28, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 255)
%15 = tail call i32 @checkResults(i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.29, i64 0, i64 0), i8* getelementptr inbounds ([213 x i8], [213 x i8]* @.str.30, i64 0, i64 0), i8* getelementptr inbounds ([154 x i8], [154 x i8]* @.str.2, i64 0, i64 0), i32 271)
ret void
}