PR c++/4222, c++/5995

PR c++/4222, c++/5995
        * call.c (build_over_call): Fix empty class logic.

From-SVN: r50978
This commit is contained in:
Jason Merrill 2002-03-18 11:55:11 -05:00 committed by Jason Merrill
parent cbb9274487
commit b663bcf33f
3 changed files with 6 additions and 4 deletions

View File

@ -1,5 +1,8 @@
2002-03-18 Jason Merrill <jason@redhat.com>
PR c++/4222, c++/5995
* call.c (build_over_call): Fix empty class logic.
PR c++/3870
* cp-tree.h (struct saved_scope): Add last_parms field.
* decl.c (maybe_push_to_top_level): Save last_function_parms.

View File

@ -4256,7 +4256,8 @@ build_over_call (cand, args, flags)
be touched as it might overlay things. When the
gcc core learns about empty classes, we can treat it
like other classes. */
&& !is_empty_class (DECL_CONTEXT (fn)))
&& !(is_empty_class (DECL_CONTEXT (fn))
&& TYPE_HAS_TRIVIAL_INIT_REF (DECL_CONTEXT (fn))))
{
tree address;
tree to = stabilize_reference

View File

@ -2,9 +2,7 @@
// This test case checks that the return value optimization works for
// empty classes.
// xfailed because empty classes clobbering what they overlay as the
// backend treats them as single byte objects. See bug 4222
// execution test - XFAIL *-*-*
// PR c++/5995
extern "C" void abort();
extern "C" int printf (const char *, ...);