2cd5333d16
In explicit17.C, we weren't detecting an unexpanded parameter pack in explicit(bool), so we crashed on a TEMPLATE_PARM_INDEX in constexpr. I noticed the same is true for noexcept(), but only since my patch to implement delayed parsing of noexcept. Previously, we would detect the unexpanded pack in push_template_decl but now the noexcept expression has not yet been parsed, so we need to do it a bit later. gcc/cp/ChangeLog: PR c++/99844 * decl.c (build_explicit_specifier): Call check_for_bare_parameter_packs. * except.c (build_noexcept_spec): Likewise. gcc/testsuite/ChangeLog: PR c++/99844 * g++.dg/cpp2a/explicit16.C: Use c++20. * g++.dg/cpp0x/noexcept66.C: New test. * g++.dg/cpp2a/explicit17.C: New test. |
||
---|---|---|
.. | ||
call.c | ||
cfns.gperf | ||
cfns.h | ||
ChangeLog | ||
ChangeLog-1993 | ||
ChangeLog-1994 | ||
ChangeLog-1995 | ||
ChangeLog-1996 | ||
ChangeLog-1997 | ||
ChangeLog-1998 | ||
ChangeLog-1999 | ||
ChangeLog-2000 | ||
ChangeLog-2001 | ||
ChangeLog-2002 | ||
ChangeLog-2003 | ||
ChangeLog-2004 | ||
ChangeLog-2005 | ||
ChangeLog-2006 | ||
ChangeLog-2007 | ||
ChangeLog-2008 | ||
ChangeLog-2009 | ||
ChangeLog-2010 | ||
ChangeLog-2011 | ||
ChangeLog-2012 | ||
ChangeLog-2013 | ||
ChangeLog-2014 | ||
ChangeLog-2015 | ||
ChangeLog-2016 | ||
ChangeLog-2017 | ||
ChangeLog-2018 | ||
ChangeLog-2019 | ||
ChangeLog-2020 | ||
ChangeLog.ptr | ||
ChangeLog.tree-ssa | ||
class.c | ||
config-lang.in | ||
constexpr.c | ||
constraint.cc | ||
coroutines.cc | ||
cp-gimplify.c | ||
cp-lang.c | ||
cp-name-hint.h | ||
cp-objcp-common.c | ||
cp-objcp-common.h | ||
cp-tree.def | ||
cp-tree.h | ||
cp-ubsan.c | ||
cvt.c | ||
cxx-pretty-print.c | ||
cxx-pretty-print.h | ||
decl2.c | ||
decl.c | ||
decl.h | ||
dump.c | ||
error.c | ||
except.c | ||
expr.c | ||
friend.c | ||
g++spec.c | ||
init.c | ||
lambda.c | ||
lang-specs.h | ||
lex.c | ||
logic.cc | ||
Make-lang.in | ||
mangle.c | ||
mapper-client.cc | ||
mapper-client.h | ||
mapper-resolver.cc | ||
method.c | ||
module.cc | ||
name-lookup.c | ||
name-lookup.h | ||
operators.def | ||
optimize.c | ||
parser.c | ||
parser.h | ||
pt.c | ||
ptree.c | ||
rtti.c | ||
search.c | ||
semantics.c | ||
tree.c | ||
type-utils.h | ||
typeck2.c | ||
typeck.c | ||
vtable-class-hierarchy.c |