Marco d'Itri <[email protected]> writes:

> On Aug 30, Ingo Jürgensmann <[email protected]> wrote:
>
>> When commenting this out, ifcico is working as expected. As this is not an 
>> easy to find error, I’d like to recommend to change the default config 
>> accordingly. 
> It segfaults in the parser, but I know nothing about flex so I cannot 
> fix it.
> I suppose that something changed in flex long ago and broke this ancient 
> code.
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x000055555555de4f in yylex () at lex.yy.c:813
> 813                   *yy_cp = (yy_hold_char);

yy_cp is NULL because of these lines in ifcico/flagexp.y:

| #ifdef FLEX_SCANNER  /* flex requires reinitialization */
|       yy_init=1;
| #endif

In the generated flaglex.c, setting yy_init to 1 inhibits
initialization:

| static int yy_init = 0;               /* whether we need to initialize */
...
|       if ( !(yy_init) )
|               {
|               (yy_init) = 1;
...

Regards,

-- 
Göran Weinholt
https://weinholt.se/

Reply via email to