]> gcc.gnu.org Git - gcc.git/commit
c++: parenthesized -> resolving to static data member [PR98283]
authorPatrick Palka <ppalka@redhat.com>
Sun, 7 May 2023 15:57:22 +0000 (11:57 -0400)
committerPatrick Palka <ppalka@redhat.com>
Sun, 7 May 2023 15:57:22 +0000 (11:57 -0400)
commite4f1ea5d8b96fc9fbe4fc0e0e0a4938ceeef092f
tree0264eb597869b38838f8783a5961cc2d346b034a
parent7bfb1550ccea7c426d50244e980f01f30db8ba0c
c++: parenthesized -> resolving to static data member [PR98283]

Here we're neglecting to propagate parenthesized-ness when the
member access (this->m) resolves to a static data member (and
thus finish_class_member_access_expr yields a VAR_DECL instead
of a COMPONENT_REF).

PR c++/98283

gcc/cp/ChangeLog:

* pt.cc (tsubst_copy_and_build) <case COMPONENT_REF>: Propagate
REF_PARENTHESIZED_P more generally via force_paren_expr.
* semantics.cc (force_paren_expr): Document default argument.

gcc/testsuite/ChangeLog:

* g++.dg/cpp1y/paren6.C: New test.
gcc/cp/pt.cc
gcc/cp/semantics.cc
gcc/testsuite/g++.dg/cpp1y/paren6.C [new file with mode: 0644]
This page took 0.058846 seconds and 5 git commands to generate.