diff options
author | Patrick Palka <ppalka@redhat.com> | 2021-10-05 09:50:02 -0400 |
---|---|---|
committer | Patrick Palka <ppalka@redhat.com> | 2021-10-05 09:50:02 -0400 |
commit | f3930418cb82000fae3cb4e98e870428800cf295 (patch) | |
tree | 5609e92195272b7a11bf3bb262eba6298b5f024c /gcc/fortran/resolve.c | |
parent | 7f4192dd3d84cb3f6584ae847eae18519d1eb76d (diff) | |
download | gcc-f3930418cb82000fae3cb4e98e870428800cf295.zip gcc-f3930418cb82000fae3cb4e98e870428800cf295.tar.gz gcc-f3930418cb82000fae3cb4e98e870428800cf295.tar.bz2 |
c++: templated static local var has value-dep addr [PR98930]
Here uses_template_parms returns false for the dependent type A<&impl::i>,
which causes tsubst_aggr_type to think it's non-dependent and not bother
substituting into it, leading to breakage.
This patch fixes this by making has_value_dependent_address also return
true for templated static local variables.
PR c++/98930
gcc/cp/ChangeLog:
* pt.c (has_value_dependent_address): Return true for a static
local variable from a function template.
gcc/testsuite/ChangeLog:
* g++.dg/cpp1z/nontype4.C: New test.
* g++.dg/cpp1z/nontype4a.C: New test.
Diffstat (limited to 'gcc/fortran/resolve.c')
0 files changed, 0 insertions, 0 deletions