// File: /workspace/github_c_makefile_star2_O0/System-Glitch[P]ESGILinter-C/src/test.c
// Function: test_variable_parsing
static void test_variable_parsing() {
	printf("------------------------------%s\n", FORMAT_RESET);
	printf("%sTESTING PARSE VARIABLE DECLARATION%s\n", COLOR_GREEN_BOLD, FORMAT_RESET);

	test_variable_declaration_parsing("int i;");
	test_variable_declaration_parsing("\tint i = 5;");
	test_variable_declaration_parsing("int t i = 5;");
	test_variable_declaration_parsing("char* *ets = \"sdf_\";");
	test_variable_declaration_parsing("char \nk\n\t =             'a';");
	test_variable_declaration_parsing("char array[12] = \"abcdefg\";");
	test_variable_declaration_parsing("char array[12][4];");
	test_variable_declaration_parsing("char* *array[12] = \"abcdefg\";");
	test_variable_declaration_parsing("unsigned char c = 42;");
	test_variable_declaration_parsing("unsigned char* c = 42;");
	test_variable_declaration_parsing("unsigned char c[42];");
	test_variable_declaration_parsing("unsigned* char c[42];");
	test_variable_declaration_parsing("unsigned** char c[42];");
	test_variable_declaration_parsing("unsigned* char** c[42];");

	test_variable_declaration_parsing("ch[ar var;");
	test_variable_declaration_parsing("un*si()gned ch[ar var;");
	test_variable_declaration_parsing("size_t length = 5;");

	test_variable_declaration_parsing("char * spacing;");
	test_variable_declaration_parsing("unsigned long * spacing;");
	test_variable_declaration_parsing("unsigned long ** spacing;");
	test_variable_declaration_parsing("unsigned long * * spacing;");

	test_variable_declaration_parsing("int i,k;");
	test_variable_declaration_parsing("int i = 0,k, l = 25;");
	test_variable_declaration_parsing("int *i, *k, **l, m;");
	test_variable_declaration_parsing("int* one, *two;;");

	test_variable_declaration_parsing("int i; int j;");
	test_variable_declaration_parsing("unsigned long long int* one, *two;");

	test_variable_declaration_parsing("int;");
	test_variable_declaration_parsing("unsigned int;");
	test_variable_declaration_parsing("unsigned int ;");
	test_variable_declaration_parsing("qwerty;");
	test_variable_declaration_parsing("qwerty = 5;");
	test_variable_declaration_parsing("qwerty int;");

	test_variable_declaration_parsing("\t//int j = 88;");
	test_variable_declaration_parsing("\tprintf(\"%d\", i);");
	test_variable_declaration_parsing("\t/*int j = 88;*/");
	test_variable_declaration_parsing("/* comment */ double db = 1.2;");
	test_variable_declaration_parsing("/* comment */ for(int count = 0 ; count < 5 ; count++) {}");

	test_variable_declaration_parsing("extern unsigned char c = 42;");
	test_variable_declaration_parsing("static unsigned char b = 98;");
	test_variable_declaration_parsing("const unsigned variable = 98;");
	test_variable_declaration_parsing("\tchar *ret = test2(param, param3, 'c');");
	test_variable_declaration_parsing("\tchar *ret = test2(param, param3, 'c'), ret2, ret3 = NULL;");
	test_variable_declaration_parsing("signed int sign;");
	test_variable_declaration_parsing("signed int volatile;");

}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x10236(%rip), %rdi     # 0x13031
leaq 0x10223(%rip), %rsi     # 0x13025
movb $0x0, %al
callq 0x20b0
leaq 0x10243(%rip), %rdi     # 0x13053
leaq 0x10264(%rip), %rsi     # 0x1307b
leaq 0x10207(%rip), %rdx     # 0x13025
movb $0x0, %al
callq 0x20b0
leaq 0x10257(%rip), %rdi     # 0x13083
callq 0x3050
leaq 0x10252(%rip), %rdi     # 0x1308a
callq 0x3050
leaq 0x10252(%rip), %rdi     # 0x13096
callq 0x3050
leaq 0x10253(%rip), %rdi     # 0x130a3
callq 0x3050
leaq 0x1025c(%rip), %rdi     # 0x130b8
callq 0x3050
leaq 0x1026d(%rip), %rdi     # 0x130d5
callq 0x3050
leaq 0x1027d(%rip), %rdi     # 0x130f1
callq 0x3050
leaq 0x10284(%rip), %rdi     # 0x13104
callq 0x3050
leaq 0x104c0(%rip), %rdi     # 0x1334c
callq 0x3050
leaq 0x1028a(%rip), %rdi     # 0x13122
callq 0x3050
leaq 0x10295(%rip), %rdi     # 0x13139
callq 0x3050
leaq 0x1029e(%rip), %rdi     # 0x1314e
callq 0x3050
leaq 0x102a8(%rip), %rdi     # 0x13164
callq 0x3050
leaq 0x102b3(%rip), %rdi     # 0x1317b
callq 0x3050
leaq 0x102cb(%rip), %rdi     # 0x1319f
callq 0x3050
leaq 0x102b3(%rip), %rdi     # 0x13193
callq 0x3050
leaq 0x102be(%rip), %rdi     # 0x131aa
callq 0x3050
leaq 0x102c5(%rip), %rdi     # 0x131bd
callq 0x3050
leaq 0x102c9(%rip), %rdi     # 0x131cd
callq 0x3050
leaq 0x102d6(%rip), %rdi     # 0x131e6
callq 0x3050
leaq 0x102e4(%rip), %rdi     # 0x13200
callq 0x3050
leaq 0x102f3(%rip), %rdi     # 0x1321b
callq 0x3050
leaq 0x102f0(%rip), %rdi     # 0x13224
callq 0x3050
leaq 0x102f9(%rip), %rdi     # 0x13239
callq 0x3050
leaq 0x10301(%rip), %rdi     # 0x1324d
callq 0x3050
leaq 0x10306(%rip), %rdi     # 0x1325e
callq 0x3050
leaq 0x10308(%rip), %rdi     # 0x1326c
callq 0x3050
leaq 0x10328(%rip), %rdi     # 0x13298
callq 0x3050
leaq 0x10313(%rip), %rdi     # 0x1328f
callq 0x3050
leaq 0x10315(%rip), %rdi     # 0x1329d
callq 0x3050
leaq 0x10318(%rip), %rdi     # 0x132ac
callq 0x3050
leaq 0x10314(%rip), %rdi     # 0x132b4
callq 0x3050
leaq 0x10314(%rip), %rdi     # 0x132c0
callq 0x3050
leaq 0x10314(%rip), %rdi     # 0x132cc
callq 0x3050
leaq 0x107d0(%rip), %rdi     # 0x13794
callq 0x3050
leaq 0x1030b(%rip), %rdi     # 0x132db
callq 0x3050
leaq 0x10310(%rip), %rdi     # 0x132ec
callq 0x3050
leaq 0x10323(%rip), %rdi     # 0x1330b
callq 0x3050
leaq 0x10351(%rip), %rdi     # 0x13345
callq 0x3050
leaq 0x10362(%rip), %rdi     # 0x13362
callq 0x3050
leaq 0x10373(%rip), %rdi     # 0x1337f
callq 0x3050
leaq 0x10385(%rip), %rdi     # 0x1339d
callq 0x3050
leaq 0x103a1(%rip), %rdi     # 0x133c5
callq 0x3050
leaq 0x103d0(%rip), %rdi     # 0x13400
callq 0x3050
leaq 0x103d5(%rip), %rdi     # 0x13411
callq 0x3050
popq %rbp
retq
nopw %cs:(%rax,%rax)