]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/cp/class.c
cp-tree.h (THUNK_TARGET): New macro.
authorNathan Sidwell <nathan@codesourcery.com>
Mon, 30 Dec 2002 13:39:48 +0000 (13:39 +0000)
committerNathan Sidwell <nathan@gcc.gnu.org>
Mon, 30 Dec 2002 13:39:48 +0000 (13:39 +0000)
commit07fa4878595a4d496d066941d948186fe701afdf
treeb2f4b26dcfa4c39b16e56aaa74b284dd0dfd7bbe
parent5a5cccaa4e00fd06fd8e8bf4e9f731dbda799dd3
cp-tree.h (THUNK_TARGET): New macro.

cp:
* cp-tree.h (THUNK_TARGET): New macro.
(THUNK_VIRTUAL_OFFSET): For result thunks it is always a binfo.
(finish_thunk): Remove offset parms.
* class.c (find_final_overrider): Look through thunks.
(get_vcall_index): Use THUNK_TARGET.
(update_vtable_entry_for_fn): Look through thunks. Set covariant
fixed offset here. Adjust finish_thunk call.
(build_vtbl_initializer): Adjust finish_thunk calls.
* mangle.c (mangle_call_offset): Remove superfluous if.
(mangle_thunk): Adjust.
* method.c (make_thunk): Adjust.
(finish_thunk): Adjust.
(thunk_adjust): Remove assert.
(use_thunk): Use THUNK_TARGET
* dump1.c (cp_dump_tree): Adjust thunk dumping.
testsuite:
* g++.dg/inherit/covariant5.C: New test.
* g++.dg/inherit/covariant6.C: New test.
* g++.dg/inherit/covariant7.C: New test.

From-SVN: r60628
gcc/cp/class.c
gcc/cp/cp-tree.h
gcc/cp/dump.c
gcc/cp/mangle.c
gcc/cp/method.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/inherit/covariant5.C [new file with mode: 0644]
gcc/testsuite/g++.dg/inherit/covariant6.C [new file with mode: 0644]
gcc/testsuite/g++.dg/inherit/covariant7.C [new file with mode: 0644]