Thanks for the update.

Paul, let's leave dfa.c as is, with the modified code.
It's much easier to read anyway.

Thanks,

Arnold

Arsen Arsenović <ar...@aarsen.me> wrote:

> Hi,
>
> Paul Eggert <egg...@cs.ucla.edu> writes:
>
> > This is a serious bug in Clang: it generates incorrect machine code.
> >
> > The code that Clang generates for the following (gawk/support/dfa.c lines
> > 1141-1143):
> >
> >     ((dfa->syntax.dfaopts & DFA_CONFUSING_BRACKETS_ERROR
> >       ? dfaerror : dfawarn)
> >      (_("character class syntax is [[:space:]], not [:space:]")));
> >
> > is immediately followed by the code generated for the following
> > (gawk/support/dfa.c line 1015):
> >
> >                     dfaerror (_("invalid character class"));
> >
> > and this is incorrect because the two source code regions are not connected
> > with each other.
>
> This is now fixed in Clang:
> https://reviews.llvm.org/rGcf8fd210a35c8e93136cb8edc5c6a2e818dc1b1d
>
> Happy hacking!
> -- 
> Arsen Arsenović

Reply via email to