> On 1 Dec 2024, at 20:07, James K. Lowden wrote:
>
> On Sun, 1 Dec 2024 21:10:31 -0500
> Maury Markowitz wrote:
>
>>> DATA { yy_push_state(data); }
>>
>> Is there a difference between yy_push_state(data) and BEGIN(data)?
>
> Yes. As stated in the manual, BEGIN simply changes the start
> c
> On 2 Dec 2024, at 03:10, Maury Markowitz wrote:
>
> I had managed to get to this point for testing the conditional states:
>
> [^0-9][A-Za-z]*[,:\n] {
> yytext[strlen(yytext) - 1] = '\0';
> yylval.s = str_new(yytext + 1);
> return STRING;
> }
Notice tha
On Sun, 1 Dec 2024 21:10:31 -0500
Maury Markowitz wrote:
> > DATA { yy_push_state(data); }
>
> Is there a difference between yy_push_state(data) and BEGIN(data)?
Yes. As stated in the manual, BEGIN simply changes the start
condition. yy_push_state and yy_pop_state use a stack, so you can
retur