The \e escape sequence
Andrew Cagney
cagney@gnu.org
Wed Dec 31 18:07:00 GMT 2003
> The \e escape sequence is a GCC extension. Its unconditional use in
> charset.c has some interesting consequences if you use a different
> compiler. With the Sun compiler (on Solaris SPARC) the \e in the
> following bit of code gets translation into a plain e:
>
> static char represented[] = "\a\b\e\f\n\r\t\v";
>
> As a result, GDB will start escaping e's in its output, for example:
>
> (gdb) p /c 101
> $1 = 101 '\e'
>
> which leads to disaster in the testsuite.
>
> So what should we do? Simply leaving out '\e' seems the best we can
> do if we don't compile GDB with GCC. However, this still leads to a
> few failures in the testsuite where we (more or less) explicitly test
> for the '\e' escape.
>
> Thoughts?
What's ISO C 90 got to say about it (I gather it isn't part of that
version of ISO C). If it isn't then it shouldn't be used or tested
(except barely maybe in a GCC specific test).
Andrew
More information about the Gdb
mailing list