On Wed, 16 Oct 2024, Lewis Hyatt wrote:

> Hello-
> 
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117118
> 
> This fixes an old regression from GCC 11. Is it OK for trunk and all
> backports please? Bootstrap + regtested all languages on x86-64 Linux.
> Thanks!
> 
> -Lewis
> 
> -- >8 --
> 
> The PR shows that we ICE after lexing an invalid unterminated raw string,
> because lex_raw_string() pops the main buffer unexpectedly. Resolve by
> handling this case the same way as for other directives.
> 
> libcpp/ChangeLog:
>       PR preprocessor/117118
>       * lex.cc (lex_raw_string): Treat an unterminated raw string the same
>       way for a deferred pragma as is done for other directives.
> 
> gcc/testsuite/ChangeLog:
>       PR preprocessor/117118
>       * c-c++-common/raw-string-directive-3.c: New test.
>       * c-c++-common/raw-string-directive-4.c: New test.

OK in the absence of C++ maintainer objections within 48 hours.

-- 
Joseph S. Myers
josmy...@redhat.com

Reply via email to