]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR target/27067 (Compile errors with multiple inheritance where the stdcall attrib...
authorDanny Smith <dannysmith@users.sourceforge.net>
Thu, 24 May 2007 10:11:49 +0000 (10:11 +0000)
committerDanny Smith <dannysmith@gcc.gnu.org>
Thu, 24 May 2007 10:11:49 +0000 (10:11 +0000)
commit5234b8f573b0c5fa3c2c2694d183668423382b23
treef82b188a73ec315cce237f81bc0dfa75447a66db
parent4f5497a9245ac73f32f4d202e3b7497c61e79925
re PR target/27067 (Compile errors with multiple inheritance where the stdcall attribute is applied to virtual functions.)

ChangeLog

PR target/27067
* doc/tm.texi (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Document.
* targhooks.h (default_mangle_decl_assembler_name): Declare
default hook.
* targhooks.c (default_mangle_decl_assembler_name): Define
default hook.
* target-def.h (TARGET_MANGLE_DECL_ASSEMBLER_NAME) New. Set to
default hook.
* target.h (struct gcc_target): Add mangle_decl_assembler_name field.
* langhooks.c (lhd_set_decl_assembler_name): Call
targetm.mangle_decl_assembler_name for names with global scope.

* config/i386/cygming.h (TARGET_MANGLE_DECL_ASSEMBLER_NAME) Override
default.
(ASM_OUTPUT_DEF_FROM_DECLS): Simplify to use DECL_ASSEMBLER_NAME.
* config/i386/i386-protos.h (i386_pe_mangle_decl_assembler_name):
Declare.
* config/i386/winnt.c (i386_pe_maybe_mangle_decl_assembler_name):
New. Factored out of i386_pe_encode_section_info.
(gen_stdcall_or_fastcall_suffix): Get name identifier as argument.
Move check for prior decoration of stdcall
symbols to i386_pe_encode_section_info.
(i386_pe_encode_section_info): Adjust call to
gen_stdcall_or_fastcall_suffix.  Use
i386_pe_maybe_mangle_decl_assembler_name, if needed.
(i386_pe_mangle_decl_assembler_name): New. Wrap
i386_pe_maybe_mangle_decl_assembler_name.

cp/ChangeLog

        * mangle.c (mangle_decl): Call targetm.mangle_decl_assembler_name.

From-SVN: r125020
12 files changed:
gcc/ChangeLog
gcc/config/i386/cygming.h
gcc/config/i386/i386-protos.h
gcc/config/i386/winnt.c
gcc/cp/ChangeLog
gcc/cp/mangle.c
gcc/doc/tm.texi
gcc/langhooks.c
gcc/target-def.h
gcc/target.h
gcc/targhooks.c
gcc/targhooks.h