Ian Lance Taylor wrote:
Beman Dawes writes:
I've proposed adding raw string literals to C++. See
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2053.html
Interesting idea.
I think there is a misspelling of std::ispunct in there.
Yep. Fixed in the revision. Thanks!
So far, the changes to accommodate raw string literals have only
touched libcpp/charset.c and libcpp/lex.c, particularly lex.c's
lex_string() function. My initial thought is to also handle embedded
newlines within lex_string(), but before attempting that approach I'd
like advice from GCC maintainers familiar with GCC's lexical
processing.
Who maintains libcpp/lex.c? What is the best way to proceed?
You can find maintainers of any part of gcc by looking in the file
MAINTAINERS (look for "cpplib" in this case). It is also often
helpful to look at the appropriate ChangeLog file to see who has
changed the code.
Thanks. I hadn't seen MAINTAINERS.
From a lexing perspective, these raw string literals are more akin to
/**/ comments then they are to strings.
Interesting. That makes sense.
Personally, I would recommend
writing a function along the lines of _cpp_skip_block_comment, and
call that either from lex_string or _cpp_lex_direct.
I'll take a look at those.
Thanks for the prompt and helpful reply,
--Beman Dawes