=================================================================
==76343==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60b00000041c at pc 0x00000060c196 bp 0x7fffdcef1f40 sp 0x7fffdcef1f38
READ of size 2 at 0x60b00000041c thread T0
#0 0x60c195 in gnode_function_add_upvalue /home/seviezhou/gravity/src/compiler/gravity_ast.c:90:41
#1 0x55cef2 in lookup_identifier /home/seviezhou/gravity/src/compiler/gravity_semacheck2.c:239:21
#2 0x557feb in visit_identifier_expr /home/seviezhou/gravity/src/compiler/gravity_semacheck2.c:1156:23
#3 0x563b63 in gvisit /home/seviezhou/gravity/src/compiler/gravity_visitor.c
#4 0x5520a8 in visit_function_decl /home/seviezhou/gravity/src/compiler/gravity_semacheck2.c:750:17
#5 0x563b63 in gvisit /home/seviezhou/gravity/src/compiler/gravity_visitor.c
#6 0x552bb6 in visit_variable_decl /home/seviezhou/gravity/src/compiler/gravity_semacheck2.c:793:22
#7 0x563b63 in gvisit /home/seviezhou/gravity/src/compiler/gravity_visitor.c
#8 0x54e2e7 in visit_compound_stmt /home/seviezhou/gravity/src/compiler/gravity_semacheck2.c:565:5
#9 0x563b63 in gvisit /home/seviezhou/gravity/src/compiler/gravity_visitor.c
#10 0x5520a8 in visit_function_decl /home/seviezhou/gravity/src/compiler/gravity_semacheck2.c:750:17
#11 0x563b63 in gvisit /home/seviezhou/gravity/src/compiler/gravity_visitor.c
#12 0x552bb6 in visit_variable_decl /home/seviezhou/gravity/src/compiler/gravity_semacheck2.c:793:22
#13 0x563b63 in gvisit /home/seviezhou/gravity/src/compiler/gravity_visitor.c
#14 0x5520a8 in visit_function_decl /home/seviezhou/gravity/src/compiler/gravity_semacheck2.c:750:17
#15 0x563b63 in gvisit /home/seviezhou/gravity/src/compiler/gravity_visitor.c
#16 0x556481 in visit_binary_expr /home/seviezhou/gravity/src/compiler/gravity_semacheck2.c:957:5
#17 0x563b63 in gvisit /home/seviezhou/gravity/src/compiler/gravity_visitor.c
#18 0x5520a8 in visit_function_decl /home/seviezhou/gravity/src/compiler/gravity_semacheck2.c:750:17
#19 0x563b63 in gvisit /home/seviezhou/gravity/src/compiler/gravity_visitor.c
#20 0x556481 in visit_binary_expr /home/seviezhou/gravity/src/compiler/gravity_semacheck2.c:957:5
#21 0x563b63 in gvisit /home/seviezhou/gravity/src/compiler/gravity_visitor.c
#22 0x54dcf7 in visit_list_stmt /home/seviezhou/gravity/src/compiler/gravity_semacheck2.c:553:5
#23 0x563b63 in gvisit /home/seviezhou/gravity/src/compiler/gravity_visitor.c
#24 0x54d6a5 in gravity_semacheck2 /home/seviezhou/gravity/src/compiler/gravity_semacheck2.c:1237:5
#25 0x5221d6 in gravity_compiler_run /home/seviezhou/gravity/src/compiler/gravity_compiler.c:171:15
#26 0x51e766 in main /home/seviezhou/gravity/src/cli/gravity.c:456:19
#27 0x7f6e049cd83f in __libc_start_main /build/glibc-e6zv40/glibc-2.23/csu/../csu/libc-start.c:291
#28 0x4217a8 in _start (/home/seviezhou/gravity/build/gravity+0x4217a8)
0x60b00000041c is located 4 bytes to the right of 104-byte region [0x60b0000003b0,0x60b000000418)
allocated by thread T0 here:
#0 0x4e5bd0 in calloc /home/seviezhou/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
#1 0x5d0f41 in gravity_calloc /home/seviezhou/gravity/src/shared/gravity_memory.c:19:12
#2 0x53fe30 in parse_enum_declaration /home/seviezhou/gravity/src/compiler/gravity_parser.c:1443:52
#3 0x53fe30 in parse_declaration_statement /home/seviezhou/gravity/src/compiler/gravity_parser.c:2362
#4 0x53d474 in parse_statement /home/seviezhou/gravity/src/compiler/gravity_parser.c:2504:59
#5 0x53ba6c in parse_compound_statement /home/seviezhou/gravity/src/compiler/gravity_parser.c:2309:25
#6 0x539c11 in parse_function /home/seviezhou/gravity/src/compiler/gravity_parser.c:300:63
#7 0x53669f in parse_precedence /home/seviezhou/gravity/src/compiler/gravity_parser.c:1059:32
#8 0x534617 in parse_infix /home/seviezhou/gravity/src/compiler/gravity_parser.c:1114:22
#9 0x5368ec in parse_precedence /home/seviezhou/gravity/src/compiler/gravity_parser.c:1080:16
#10 0x53dec2 in parse_expression /home/seviezhou/gravity/src/compiler/gravity_parser.c:1092:12
#11 0x53dec2 in parse_expression_statement /home/seviezhou/gravity/src/compiler/gravity_parser.c:2477
#12 0x53dec2 in parse_statement /home/seviezhou/gravity/src/compiler/gravity_parser.c:2510
#13 0x52cfbf in parser_run /home/seviezhou/gravity/src/compiler/gravity_parser.c:2575:29
#14 0x52cfbf in gravity_parser_run /home/seviezhou/gravity/src/compiler/gravity_parser.c:2658
#15 0x5220e9 in gravity_compiler_run /home/seviezhou/gravity/src/compiler/gravity_compiler.c:161:21
SUMMARY: AddressSanitizer: heap-buffer-overflow /home/seviezhou/gravity/src/compiler/gravity_ast.c:90:41 in gnode_function_add_upvalue
Shadow bytes around the buggy address:
0x0c167fff8030: fa fa fa fa 00 00 00 00 00 00 00 00 00 00 00 00
0x0c167fff8040: 00 00 fa fa fa fa fa fa fa fa 00 00 00 00 00 00
0x0c167fff8050: 00 00 00 00 00 00 00 00 fa fa fa fa fa fa fa fa
0x0c167fff8060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 fa fa
0x0c167fff8070: fa fa fa fa fa fa 00 00 00 00 00 00 00 00 00 00
=>0x0c167fff8080: 00 00 00[fa]fa fa fa fa fa fa fa fa 00 00 00 00
0x0c167fff8090: 00 00 00 00 00 00 00 00 00 00 fa fa fa fa fa fa
0x0c167fff80a0: fa fa 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0c167fff80b0: fa fa fa fa fa fa fa fa 00 00 00 00 00 00 00 00
0x0c167fff80c0: 00 00 00 00 00 00 fa fa fa fa fa fa fa fa fa fa
0x0c167fff80d0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
==76343==ABORTING
System info
Ubuntu x86_64, clang 6.0, gravity (latest master ecbee9f)
Configure
cmake .. -DCMAKE_CXX_FLAGS="-fsanitize=address -g" -DCMAKE_C_FLAGS="-fsanitize=address -g" -DCMAKE_EXE_LINKER_FLAGS="-fsanitize=address"
Command line
./build/gravity -o /tmp/grav -q -c @@
Output
AddressSanitizer output
POC
heap-overflow-gnode_function_add_upvalue-gravity_ast-90.zip
The text was updated successfully, but these errors were encountered: