Segmentation Fault

Ryan Phelps rmphe... at gmail.com
Mon Dec 17 21:18:28 UTC 2007


Excellent! Thanks for that!

-Ryan-

On Dec 17, 3:22 pm, Adrian Thurston <thurs... at cs.queensu.ca> wrote:
> Hi, here is a patch that fixes the problem. This seems like an important
> fix so I'm debating whether or not I should do a 5.25 release instead of
> just fixing it 6.0, which is due out soonish.
>
> -Adrian
>
> Ryan Phelps wrote:
> > rlgen-java gives me a segmentation fault when run on the XML generated
> > by the following code:
>
> > public class SegFault {
> >   %%{
> >     machine A;
> >     write data;
> >     main := space* '=' [WHAT?!] @{} space*;
> >   }%%
>
> >   private void foo() {
> >     int cs, p = 0, pe = 0;
> >     char[] data = null;
> >     %% write init;
> >     %% write exec;
> >   }
>
> >   %%{
> >     machine B;
> >     write data;
> >     main := 'blah';
> >   }%%
>
> >   private void bar() {
> >     int cs, p = 0, pe = 0;
> >     char[] data = null;
> >     %% write init;
> >     %% write exec;
> >   }
> > }
>
> > This is the most simplified reproduction of the problem that I could
> > create after discovering it while trying to implement a configuration
> > file parser. The strange part is that the smallest changes to the
> > above code will fix it. For example, if I change anything at all with
> > 'main' of machine A (like changing [WHAT?!] to [WHA?!], using "space"
> > instead of "space*", or getting rid of the empty action), rlgen-java
> > will work fine. If I rename machine A to machine S it works fine. If I
> > get rid of machine B it works fine.
>
> > Can anyone else verify this or is it just my machine?
> > >
>
>
>  ragel-5.24-phelps-segfault.diff
> 1KDownload
>
>  signature.asc
> 1KDownload



More information about the ragel-users mailing list