tj / luna

luna programming language - a small, elegant VM implemented in C
2.46k stars 148 forks source link

Program received signal SIGSEGV, Segmentation fault in primary_expr #102

Open EnchantedJohn opened 6 years ago

EnchantedJohn commented 6 years ago

there is second crash. gdb error information:

(gdb) run /home/lx/DIVE/Trunk/bin/hfl/output/2014113C514B5678181A5B721E6B693F638486/hfl-crash-475-{rva_0x88EA}{code_0xB}{access_0x400018}{luna}
Starting program: /home/lx/5_30/luna/luna-master/luna /home/lx/DIVE/Trunk/bin/hfl/output/2014113C514B5678181A5B721E6B693F638486/hfl-crash-475-{rva_0x88EA}{code_0xB}{access_0x400018}{luna}

Program received signal SIGSEGV, Segmentation fault.
0x00000000004088de in primary_expr (self=0xffffffffffffffff) at src/parser.c:283

bt:

(gdb) bt
#0  0x00000000004088de in primary_expr (self=0xffffffffffffffff) at src/parser.c:283
#1  0xffffffffffffffff in ?? ()
#2  0xffffffffffffffff in ?? ()
#3  0x00000001ffffffff in ?? ()
#4  0x00007fffffffd500 in ?? ()
#5  0x00000000004088da in primary_expr (self=<error reading variable: Cannot access memory at address 0xffffffffffffffef>) at src/parser.c:283
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
(gdb) i r
rax            0x1  1
rbx            0x0  0
rcx            0x131ff  78335
rdx            0x7fffffffdc18   140737488346136
rsi            0x7fffffffd477   140737488344183
rdi            0xffffffffffffffff   -1
rbp            0x7fffffffd500   0x7fffffffd500
rsp            0x7fffffffd530   0x7fffffffd530
r8             0xffffffffffffffff   -1
r9             0xffffffffffffffff   -1
r10            0xffffffffffffffff   -1
r11            0x7ffff778e201   140737345282561
r12            0x401220 4198944
r13            0x7fffffffe2b0   140737488347824
r14            0x0  0
r15            0x0  0
rip            0x4088de 0x4088de <primary_expr+270>
eflags         0x10202  [ IF RF ]
cs             0x33 51
ss             0x2b 43
ds             0x0  0
es             0x0  0
fs             0x0  0
gs             0x0  0
(gdb) x/10i $pc
=> 0x4088de <primary_expr+270>: mov    0x20(%rdi),%rdi
   0x4088e2 <primary_expr+274>: add    $0x28,%rdi
   0x4088e6 <primary_expr+278>: mov    -0x10(%rbp),%rcx
   0x4088ea <primary_expr+282>: mov    %rdi,0x18(%rcx)
   0x4088ee <primary_expr+286>: mov    -0x18(%rbp),%rcx
   0x4088f2 <primary_expr+290>: mov    %rcx,-0x8(%rbp)
   0x4088f6 <primary_expr+294>: mov    %eax,-0x30(%rbp)
   0x4088f9 <primary_expr+297>: jmpq   0x40890b <primary_expr+315>
   0x4088fe <primary_expr+302>: mov    -0x10(%rbp),%rdi
   0x408902 <primary_expr+306>: callq  0x408bc0 <paren_expr>