diff options
author | Jakub Jelinek <jakub@redhat.com> | 2018-04-04 21:34:18 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2018-04-04 21:34:18 +0200 |
commit | 628a15343e494e457c647347e879c69a62016e0c (patch) | |
tree | be0e52b9e5a853ce7d421833b2bda0d3e3c369c3 /gcc/expr.c | |
parent | 001db6cf52711f785459558508ca6fa97e10bcae (diff) | |
download | gcc-628a15343e494e457c647347e879c69a62016e0c.zip gcc-628a15343e494e457c647347e879c69a62016e0c.tar.gz gcc-628a15343e494e457c647347e879c69a62016e0c.tar.bz2 |
re PR c++/85146 (ICE with __direct_bases for declared but not defined struct)
PR c++/85146
* cp-tree.h (calculate_bases, calculate_direct_bases): Add complain
argument.
* semantics.c (calculate_bases): Add complain argument. Use
complete_type_or_maybe_complain instead of just complete_type and
return an empty vector if it fails. Move make_tree_vector () call
after early return. Formatting fixes.
(calculate_direct_bases): Likewise. Call release_tree_vector at the
end.
(dfs_calculate_bases_post, calculate_bases_helper): Formatting fixes.
* pt.c (tsubst_pack_expansion): Adjust calculate_bases and
calculate_direct_bases callers, formatting fixes.
* g++.dg/ext/bases2.C: Expect extra error diagnostics.
* g++.dg/ext/bases3.C: New test.
From-SVN: r259101
Diffstat (limited to 'gcc/expr.c')
0 files changed, 0 insertions, 0 deletions