diff options
author | Marek Polacek <polacek@redhat.com> | 2022-03-02 12:12:33 -0500 |
---|---|---|
committer | Marek Polacek <polacek@redhat.com> | 2022-03-10 11:22:40 -0500 |
commit | 97f76b5fc4b637033229e53033b4f8b6dc23472c (patch) | |
tree | 55f2a369772fc52fbba7886a31818f2639c7114b /gcc/fortran/trans-openmp.cc | |
parent | ac8310dd122172bf9d7217e3367da55f9bf9b21b (diff) | |
download | gcc-97f76b5fc4b637033229e53033b4f8b6dc23472c.zip gcc-97f76b5fc4b637033229e53033b4f8b6dc23472c.tar.gz gcc-97f76b5fc4b637033229e53033b4f8b6dc23472c.tar.bz2 |
c++: Don't allow type-constraint auto(x) [PR104752]
104752 points out that
template<class T>
concept C = true;
auto y = C auto(1);
is ill-formed as per [dcl.type.auto.deduct]: "For an explicit type conversion,
T is the specified type, which shall be auto." which doesn't allow
type-constraint auto.
PR c++/104752
gcc/cp/ChangeLog:
* semantics.cc (finish_compound_literal): Disallow auto{x} for
is_constrained_auto.
* typeck2.cc (build_functional_cast_1): Likewise.
gcc/testsuite/ChangeLog:
* g++.dg/cpp23/auto-fncast12.C: New test.
Diffstat (limited to 'gcc/fortran/trans-openmp.cc')
0 files changed, 0 insertions, 0 deletions