AaronBallman wrote:

> raw string literals are enabled in C++11 and later, as well as in C in gnu99 
> mode and later;

Why gnu99 mode and not gnu89 mode? I see GCC has that behavior, but I'm not 
certain why.

> I’m not entirely sure how to fix this candidly. It doesn’t look like 
> unconditionally enabling raw string literals is an option here... This 
> situation reminds me of a similar issue we’re having with ' in numeric 
> literals (#88896). I’m personally not too familiar with the lexer, but would 
> it be possible to pass through the original lang options here from wherever 
> this is invoked?

Yeah, it's pretty frustrating that we've found two instances of this in such a 
short period of time. :-/

That test was added in 
https://github.com/llvm/llvm-project/commit/ee8ed0b3099e63ba0a18cca42b9cfdf098bc6201
 and it seems to be a bit of a drive-by as the author noticed the behavior. 
Given that dependency scanning is never going to care about raw string literals 
to begin with (at least that I can think of), I'm not certain there's any harm 
in always supporting raw string literals from dependency scanning, so we could 
probably do that in the worst case.

But my concerns from 
https://github.com/llvm/llvm-project/pull/93753#issuecomment-2173666602 are 
still relevant too. CC @jansvoboda11 

https://github.com/llvm/llvm-project/pull/88265
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to