[ragel-users] Ragel crash (searching includes?)
Adrian Thurston
thurston at complang.org
Mon Oct 12 03:34:38 UTC 2009
I can't reproduce, but I fixed a bug in this area the other day. Is this
the trunk? If not could you test with it?
-Adrian
Diego Elio “Flameeyes” Pettenò wrote:
> Seems like I hit something here ;)
>
> check out git://git.lscube.org/feng.git (rfc822-parser branch):
>
> feng % ragel
> -I/media/repos/flame/.lscube/yamato/feng/../../sources/feng/src/network
> -Isrc/network
> -C /media/repos/flame/.lscube/yamato/feng/../../sources/feng/src/network/ragel_request_line.rl -o src/network/ragel_request_line.c
> *** glibc detected *** ragel: corrupted double-linked list:
> 0x0000000000d68520 ***
>
> uh-oh!
>
> ==17658== Invalid write of size 8
> ==17658== at 0x425571: Scanner::makeIncludePathChecks(char const*,
> char const*, int) (rlscan.rl:594)
> ==17658== by 0x42E88E: Scanner::handleInclude() (rlscan.rl:316)
> ==17658== by 0x426977: Scanner::processToken(int, char*, int)
> (rlscan.rl:391)
> ==17658== by 0x42DC7F: Scanner::do_scan() (rlscan.rl:1106)
> ==17658== by 0x40397D: process(InputData&) (main.cpp:456)
> ==17658== by 0x4049F6: main (main.cpp:548)
> ==17658== Address 0x5a00830 is 0 bytes after a block of size 16 alloc'd
> ==17658== at 0x4C2466C: operator new[](unsigned long)
> (vg_replace_malloc.c:264)
> ==17658== by 0x425423: Scanner::makeIncludePathChecks(char const*,
> char const*, int) (rlscan.rl:559)
> ==17658== by 0x42E88E: Scanner::handleInclude() (rlscan.rl:316)
> ==17658== by 0x426977: Scanner::processToken(int, char*, int)
> (rlscan.rl:391)
> ==17658== by 0x42DC7F: Scanner::do_scan() (rlscan.rl:1106)
> ==17658== by 0x40397D: process(InputData&) (main.cpp:456)
> ==17658== by 0x4049F6: main (main.cpp:548)
> ==17658==
> ==17658== Invalid write of size 8
> ==17658== at 0x4255A5: Scanner::makeIncludePathChecks(char const*,
> char const*, int) (rlscan.rl:598)
> ==17658== by 0x42E88E: Scanner::handleInclude() (rlscan.rl:316)
> ==17658== by 0x426977: Scanner::processToken(int, char*, int)
> (rlscan.rl:391)
> ==17658== by 0x42DC7F: Scanner::do_scan() (rlscan.rl:1106)
> ==17658== by 0x40397D: process(InputData&) (main.cpp:456)
> ==17658== by 0x4049F6: main (main.cpp:548)
> ==17658== Address 0x5a00838 is 8 bytes after a block of size 16 alloc'd
> ==17658== at 0x4C2466C: operator new[](unsigned long)
> (vg_replace_malloc.c:264)
> ==17658== by 0x425423: Scanner::makeIncludePathChecks(char const*,
> char const*, int) (rlscan.rl:559)
> ==17658== by 0x42E88E: Scanner::handleInclude() (rlscan.rl:316)
> ==17658== by 0x426977: Scanner::processToken(int, char*, int)
> (rlscan.rl:391)
> ==17658== by 0x42DC7F: Scanner::do_scan() (rlscan.rl:1106)
> ==17658== by 0x40397D: process(InputData&) (main.cpp:456)
> ==17658== by 0x4049F6: main (main.cpp:548)
>
>
More information about the ragel-users
mailing list