On Mon, Jan 10, 2022 at 06:09:01PM -0500, David Edelsohn wrote: > On Sun, Jan 9, 2022 at 10:16 PM HAO CHEN GUI <guih...@linux.ibm.com> wrote: > > > +/* { dg-final { scan-assembler-not "\mmr\M" } } */ > > Segher probably would prefer {\mmr\M} .
Because that one works, and the one with double quotes doesn't, yes :-) It is a scan-assembler-not so the testcase likely won't fail, but it is checking the wrong thing. In double-quoted strings "\m" means the same as "m", and "\M" means the same as "M" (neither escape has any special meaning). If you want the regex escapes in such a string, you need to escape the escapes, so write "\\m" and "\\M". It is much simpler to not have backslash substitution on the strings at all, so to use {\m} etc. Segher