[Bug c++/11021] [3.3/3.4 regression] [cygwin/mingw]: Inheriting a virtual method from a dllimport'd base class->segfault
cvs-commit at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Fri Jul 4 07:42:00 GMT 2003
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=11021
------- Additional Comments From cvs-commit at gcc dot gnu dot org 2003-07-04 07:42 -------
Subject: Bug 11021
CVSROOT: /cvs/gcc
Module name: gcc
Changes by: dannysmith@gcc.gnu.org 2003-07-04 07:42:11
Modified files:
gcc : ChangeLog
gcc/doc : extend.texi
gcc/config/i386: winnt.c
Log message:
PR c++/5287, PR c++/7910, PR c++/11021
* config/i386/winnt.c (ix86_handle_dll_attribute): Don't add
dllimport attribute if function is defined at declaration, but
report error instead. Likewise for dllimport'd variable
definitions. Set implicit TREE_PUBLIC for dllimport'd variables
declared within functions, Report error if dllimport or dllexport
symbol is not global.
(i386_pe_dllimport_p): Ignore dllimport attribute of functions
if defined after declaration or if inlined. Don't allow definition
of static data members of C++ classes. Don't dllimport virtual
methods.
(i386_pe_mark_dllexport): Warn about inconsistent dll attributes.
(i386_pe_mark_dllimport): Remove unnecessary checks.
(i386_pe_encode_section_info): Warn if the dllimport attribute
and symbol prefix have been instantiated and then overridden.
* doc/extend.texi: Document dllimport and dllexport attributes.
* config/i386/winnt.c (i386_pe_output_labelref): Fix indents.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.325&r2=2.326
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/extend.texi.diff?cvsroot=gcc&r1=1.146&r2=1.147
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/winnt.c.diff?cvsroot=gcc&r1=1.48&r2=1.49
More information about the Gcc-bugs
mailing list