* target-def.h (TARGET_CXX): Add TARGET_CXX_EXPORT_CLASS_DATA.
commit4fc9a8eccc0aab9c067061c19b46fa287b46128d
authormmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 1 Sep 2004 03:45:30 +0000 (1 03:45 +0000)
committermmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 1 Sep 2004 03:45:30 +0000 (1 03:45 +0000)
treeec2aef636de8abf10479855a1221a1b908fabff6
parent0222d9841fb086625a94a823b2001d7b90be8dfb
* target-def.h (TARGET_CXX): Add TARGET_CXX_EXPORT_CLASS_DATA.
* target.h (cxx): Add export_class_data.
* config/arm/arm.c (arm_cxx_export_class_data): New function.
(TARGET_CXX_EXPORT_CLASS_DATA): Use it.
* testsuite/g++.dg/ext/visibility/arm1.C: New test.

* cp-tree.h (DECL_CONSTRUCTION_VTABLE_P): New macro.
* class.c (build_ctor_vtbl_group): Set DECL_CONSTRUCTION_VTABLE_P.
* decl2.c (determine_visibility): Honor
TARGET_CXX_EXPORT_CLASS_DATA.

* g++.dg/ext/visibility/arm1.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@86867 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/arm/arm.c
gcc/config/arm/bpabi.h
gcc/cp/ChangeLog
gcc/cp/class.c
gcc/cp/cp-tree.h
gcc/cp/decl2.c
gcc/doc/tm.texi
gcc/target-def.h
gcc/target.h
gcc/testsuite/ChangeLog