public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "cvs-commit at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/97399] [9/10 Regression] g++ 9.3 cannot compile SFINAE code with separated declaration and definition, g++ 7.3 compiles Date: Sat, 10 Apr 2021 20:33:23 +0000 [thread overview] Message-ID: <bug-97399-4-yZtw8cnMqA@http.gcc.gnu.org/bugzilla/> (raw) In-Reply-To: <bug-97399-4@http.gcc.gnu.org/bugzilla/> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97399 --- Comment #7 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Jason Merrill <jason@gcc.gnu.org>: https://gcc.gnu.org/g:82198676c80764ca7cf05f891afaee83b9179dd1 commit r11-8118-g82198676c80764ca7cf05f891afaee83b9179dd1 Author: Jason Merrill <jason@redhat.com> Date: Sat Apr 10 10:55:58 2021 -0400 c++: ICE with invalid use of 'this' with static memfn [PR98800] Here instantiation of the fake 'this' parameter we used when parsing the trailing return type of func() was failing because there is no actual 'this' parameter in the instantiation. For PR97399 I told Patrick to do the 'this' injection even for statics, but now I think I was wrong; the out-of-class definition case I was concerned about does not break with this patch. And we don't set current_class_ptr in the body of a static member function. And the OMP code should continue to parse 'this' and complain about it rather than give a syntax error. gcc/cp/ChangeLog: PR c++/98800 PR c++/97399 * parser.c (cp_parser_direct_declarator): Don't inject_this_parameter if static_p. (cp_parser_omp_var_list_no_open): Parse 'this' even if current_class_ptr isn't set for a better diagnostic. gcc/testsuite/ChangeLog: PR c++/98800 * g++.dg/gomp/this-1.C: Adjust diagnostic. * g++.dg/cpp0x/constexpr-this1.C: New test.
next prev parent reply other threads:[~2021-04-10 20:33 UTC|newest] Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-10-13 9:58 [Bug c++/97399] New: " renlin at gcc dot gnu.org 2020-10-13 9:58 ` [Bug c++/97399] " renlin at gcc dot gnu.org 2020-10-13 11:02 ` [Bug c++/97399] [9/10/11 Regression] " rguenth at gcc dot gnu.org 2020-10-13 14:10 ` marxin at gcc dot gnu.org 2021-01-14 9:25 ` rguenth at gcc dot gnu.org 2021-01-20 20:00 ` ppalka at gcc dot gnu.org 2021-01-23 5:25 ` cvs-commit at gcc dot gnu.org 2021-01-23 5:25 ` [Bug c++/97399] [9/10 " ppalka at gcc dot gnu.org 2021-04-10 20:33 ` cvs-commit at gcc dot gnu.org [this message] 2021-06-01 8:18 ` rguenth at gcc dot gnu.org 2022-05-27 9:43 ` [Bug c++/97399] [10 " rguenth at gcc dot gnu.org 2022-06-28 10:42 ` jakub at gcc dot gnu.org 2023-07-07 9:08 ` rguenth at gcc dot gnu.org
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=bug-97399-4-yZtw8cnMqA@http.gcc.gnu.org/bugzilla/ \ --to=gcc-bugzilla@gcc.gnu.org \ --cc=gcc-bugs@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).