From 9d9800938ef61b7978abb33a8b202beeb3efed6b Mon Sep 17 00:00:00 2001 From: Patrick Palka Date: Fri, 19 Jul 2024 11:08:09 -0400 Subject: [PATCH] c++: add fixed testcase [PR109464] Seems to be fixed by r15-521-g6ad7ca1bb90573. PR c++/109464 gcc/testsuite/ChangeLog: * g++.dg/template/explicit-instantiation8.C: New test. (cherry picked from commit 58a9f3ded1a0ccc2c8b0a42f976950041734798e) --- .../g++.dg/template/explicit-instantiation8.C | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 gcc/testsuite/g++.dg/template/explicit-instantiation8.C diff --git a/gcc/testsuite/g++.dg/template/explicit-instantiation8.C b/gcc/testsuite/g++.dg/template/explicit-instantiation8.C new file mode 100644 index 000000000000..92152a2992e9 --- /dev/null +++ b/gcc/testsuite/g++.dg/template/explicit-instantiation8.C @@ -0,0 +1,24 @@ +// PR c++/109464 +// { dg-do compile { target c++11 } } + +template +struct shallow + { + int len; + constexpr shallow() : len(0) { } + }; + +template +struct use_shallow + { + static constexpr shallow s_zstr = { }; + static_assert(s_zstr.len == 0, ""); + }; + +extern template struct shallow; +extern template struct use_shallow; + +template struct shallow; +template struct use_shallow; + +// { dg-final { scan-assembler "_ZN7shallowIcEC2Ev" } } -- 2.47.2