target-def.h (TARGET_CXX): Add TARGET_CXX_EXPORT_CLASS_DATA.
authorMark Mitchell <mark@codesourcery.com>
Wed, 1 Sep 2004 03:45:30 +0000 (03:45 +0000)
committerMark Mitchell <mmitchel@gcc.gnu.org>
Wed, 1 Sep 2004 03:45:30 +0000 (03:45 +0000)
commit505970fc3324e2a0c00f5d82d66f62bae133e282
treeec2aef636de8abf10479855a1221a1b908fabff6
parentbe8fff8104f223a0eaa5ea36f385982d09d9731e
target-def.h (TARGET_CXX): Add TARGET_CXX_EXPORT_CLASS_DATA.

* 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.

From-SVN: r86867
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