[Bug target/95782] [s390] ICE in _cpp_pop_context
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95782 --- Comment #4 from GCC Commits --- The master branch has been updated by Jiu Fu Guo : https://gcc.gnu.org/g:83bc41e8364360b63eaa59c88e2fb499a6751233 commit r15-14-g83bc41e8364360b63eaa59c88e2fb499a6751233 Author: Jiufu Guo Date: Wed Mar 27 14:15:40 2024 +0800 s390: avoid peeking eof after __vector Same like PR101168, it is need for s390 to avoid peeking eof after vector keyword. And similar test case is also ok for s390. PR target/95782 gcc/ChangeLog: * config/s390/s390-c.cc (s390_macro_to_expand): Avoid empty identifier. gcc/testsuite/ChangeLog: * g++.target/s390/pr95782.C: New test.
[Bug target/95782] [s390] ICE in _cpp_pop_context
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95782 Jiu Fu Guo changed: What|Removed |Added CC||guojiufu at gcc dot gnu.org --- Comment #3 from Jiu Fu Guo --- (In reply to Andrew Pinski from comment #2) > The powerpc issue was fixed in GCC 13 (most likely by > r13-220-g067fe66c8ba9b16feacf66fce9ae668091e42821 ). > > s390 most likely needs the same treatment: > ``` > [apinski@xeond2 rs6000]$ git diff ../s390/s390-c.cc > diff --git a/gcc/config/s390/s390-c.cc b/gcc/config/s390/s390-c.cc > index 8d3d1a467a8..8096b1ff7c1 100644 > --- a/gcc/config/s390/s390-c.cc > +++ b/gcc/config/s390/s390-c.cc > @@ -275,7 +275,7 @@ s390_macro_to_expand (cpp_reader *pfile, const cpp_token > *tok) >/* __vector long __bool a; */ >if (ident == C_CPP_HASHNODE (__bool_keyword)) > expand_bool_p = true; > - else > + else if (ident) > { > /* Triggered with: __vector long long __bool a; */ > do > > ``` > > I cannot test this at all, and a similar testcase in PR 101168 should be > added for s390. Test with cross-compiling, this code can fix the issue as expected.
[Bug target/95782] [s390] ICE in _cpp_pop_context
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95782 Andrew Pinski changed: What|Removed |Added Target Milestone|13.0|---
[Bug target/95782] [s390] ICE in _cpp_pop_context
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95782 Andrew Pinski changed: What|Removed |Added Ever confirmed|0 |1 Target|powerpc64le |s390 Target Milestone|--- |13.0 Status|UNCONFIRMED |NEW Known to work|13.1.0 | Last reconfirmed||2024-03-26 Summary|[ppc64le] ICE in|[s390] ICE in |_cpp_pop_context|_cpp_pop_context --- Comment #2 from Andrew Pinski --- The powerpc issue was fixed in GCC 13 (most likely by r13-220-g067fe66c8ba9b16feacf66fce9ae668091e42821 ). s390 most likely needs the same treatment: ``` [apinski@xeond2 rs6000]$ git diff ../s390/s390-c.cc diff --git a/gcc/config/s390/s390-c.cc b/gcc/config/s390/s390-c.cc index 8d3d1a467a8..8096b1ff7c1 100644 --- a/gcc/config/s390/s390-c.cc +++ b/gcc/config/s390/s390-c.cc @@ -275,7 +275,7 @@ s390_macro_to_expand (cpp_reader *pfile, const cpp_token *tok) /* __vector long __bool a; */ if (ident == C_CPP_HASHNODE (__bool_keyword)) expand_bool_p = true; - else + else if (ident) { /* Triggered with: __vector long long __bool a; */ do ``` I cannot test this at all, and a similar testcase in PR 101168 should be added for s390.