On 27 September 2013 03:15, Tim Shen wrote: > POSIX ERE says that escaping an ordinary char, say R"\n" is not > permitted, because 'n' is not a special char. However, they also say > that : "Implementations are permitted to extend the language to allow > these. Conforming applications cannot use such constructs." > > So let's support it not to make users surprised. > > Booted and tested under -m32 and -m64
I'm wondering whether we want to have a stricter mode that doesn't allow them, to help users avoid creating non-portable programs. We could check the value of the preprocessor macro __STRICT_ANSI__, which is set by -std=c++11 but not by -std=gnu++11, although that's not really the right flag. We want something more like the GNU shell utils' POSIXLY_CORRECT.