re PR c++/61038 (g++ -E is unusable with UDL strings)
gcc/testsuite/
2014-05-20 Edward Smith-Rowland <3dw4rd@verizon.net>
PR C++/61038
* g++.dg/cpp0x/pr61038.C: New.
libcpp/
2014-05-20 Edward Smith-Rowland <3dw4rd@verizon.net>
PR C++/61038
* macro.c (stringify_arg (cpp_reader *, macro_arg *)):
Check for user-defined literal strings and user-defined literal chars
to escape necessary characters.
From-SVN: r210666
diff --git a/libcpp/macro.c b/libcpp/macro.c
index 11e50f4..c3db9a2 100644
--- a/libcpp/macro.c
+++ b/libcpp/macro.c
@@ -494,6 +494,9 @@
|| token->type == CPP_STRING16 || token->type == CPP_CHAR16
|| token->type == CPP_UTF8STRING);
+ escape_it = escape_it || cpp_userdef_string_p (token->type)
+ || cpp_userdef_char_p (token->type);
+
/* Room for each char being written in octal, initial space and
final quote and NUL. */
len = cpp_token_len (token);