From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21835 invoked by alias); 12 Dec 2003 18:22:31 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 21824 invoked by alias); 12 Dec 2003 18:22:30 -0000 Date: Fri, 12 Dec 2003 18:22:00 -0000 Message-ID: <20031212182230.21823.qmail@sources.redhat.com> From: "cvs-commit at gcc dot gnu dot org" To: gcc-bugs@gcc.gnu.org In-Reply-To: <20031119083730.13118.grigory@stl.sarov.ru> References: <20031119083730.13118.grigory@stl.sarov.ru> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug c++/13118] [ABI] Missed covariant return thunk X-Bugzilla-Reason: CC X-SW-Source: 2003-12/txt/msg01439.txt.bz2 List-Id: ------- Additional Comments From cvs-commit at gcc dot gnu dot org 2003-12-12 18:22 ------- Subject: Bug 13118 CVSROOT: /cvs/gcc Module name: gcc Changes by: nathan@gcc.gnu.org 2003-12-12 18:22:24 Modified files: gcc/cp : ChangeLog cp-tree.h class.c method.c semantics.c gcc/testsuite : ChangeLog Added files: gcc/testsuite/g++.dg/abi: covariant3.C Log message: cp: PR c++/13118 * cp-tree.h (lang_decl_u): Add thunk_alias member. (THUNK_VIRTUAL_OFFSET): Must be a FUNCTION_DECL. (THUNK_ALIAS_P): Remove. (THUNK_ALIAS): Adjust. * class.c (update_vtable_entry_for_fn): Get the vbase within the overriding function's return type. (dump_thunk): Adjust THUNK_ALIAS printing. (build_vtbl_initializer): Adjust THUNK_ALIAS use. * method.c (make_thunk): Revert 12881 test change. Clear THUNK_ALIAS. (finish_thunk): Adjust THUNK_ALIAS setting. (use_thunk): Adjust THUNK_ALIAS use. * semantics.c (emit_associated_thunks): Likewise. testsuite: PR c++/13118 * g++.dg/abi/covariant3.C: New. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&r1=1.3796&r2=1.3797 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/cp-tree.h.diff?cvsroot=gcc&r1=1.938&r2=1.939 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/class.c.diff?cvsroot=gcc&r1=1.585&r2=1.586 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/method.c.diff?cvsroot=gcc&r1=1.272&r2=1.273 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/semantics.c.diff?cvsroot=gcc&r1=1.374&r2=1.375 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.3249&r2=1.3250 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/abi/covariant3.C.diff?cvsroot=gcc&r1=NONE&r2=1.1 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13118