diff options
author | Jason Merrill <jason@redhat.com> | 2019-12-17 16:46:40 -0500 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2019-12-17 16:46:40 -0500 |
commit | 4f05d85a22351720d860afb788cc5cdaffca92ca (patch) | |
tree | f09533c4151488583374ed223b5d904118a1fc44 /gcc/ada/gcc-interface/decl.c | |
parent | 9c7b2b0ba8687f92f7beab2e3615a1107c7063db (diff) | |
download | gcc-4f05d85a22351720d860afb788cc5cdaffca92ca.zip gcc-4f05d85a22351720d860afb788cc5cdaffca92ca.tar.gz gcc-4f05d85a22351720d860afb788cc5cdaffca92ca.tar.bz2 |
PR c++/79592 - missing explanation of invalid constexpr.
We changed months back to use the pre-generic form for constexpr evaluation,
but explain_invalid_constexpr_fn was still using DECL_SAVED_TREE. This
mostly works, but misses some issues due to folding. So with this patch we
save the pre-generic form of constexpr functions even when we know they
can't produce a constant result.
* constexpr.c (register_constexpr_fundef): Do store the body of a
template instantiation that is not potentially constant.
(explain_invalid_constexpr_fn): Look it up.
(cxx_eval_call_expression): Check fundef->result.
From-SVN: r279473
Diffstat (limited to 'gcc/ada/gcc-interface/decl.c')
0 files changed, 0 insertions, 0 deletions