aboutsummaryrefslogtreecommitdiff
path: root/gcc/gcc.c
diff options
context:
space:
mode:
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>2016-05-09 11:54:55 +0000
committerRainer Orth <ro@gcc.gnu.org>2016-05-09 11:54:55 +0000
commitad103b01538743f91ba51cfa51da273d34c901c4 (patch)
tree2b0dc7dd0a636ef6539f2e6f8994a35788eef858 /gcc/gcc.c
parent7972e24663f00ba9319b71b6cb7d931d6ded5fa1 (diff)
downloadgcc-ad103b01538743f91ba51cfa51da273d34c901c4.zip
gcc-ad103b01538743f91ba51cfa51da273d34c901c4.tar.gz
gcc-ad103b01538743f91ba51cfa51da273d34c901c4.tar.bz2
Error out on -fvtable-verify without --enable-vtable-verify
* configure.ac (enable_vtable_verify): Handle --enable-vtable-verify. * configure: Regenerate. * config.in: Regenerate. * gcc.c (VTABLE_VERIFICATION_SPEC) [!ENABLE_VTABLE_VERIFY]: Error on -fvtable-verify. * config/sol2.h [!ENABLE_VTABLE_VERIFY] (STARTFILE_VTV_SPEC): Define. (ENDFILE_VTV_SPEC): Define. From-SVN: r236029
Diffstat (limited to 'gcc/gcc.c')
-rw-r--r--gcc/gcc.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 1af5920..7bcf3b3 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -989,9 +989,18 @@ proper position among the other output files. */
the vtable verification runtime functions are in libstdc++, so we use
the spec just below this one. */
#ifndef VTABLE_VERIFICATION_SPEC
+#if ENABLE_VTABLE_VERIFY
#define VTABLE_VERIFICATION_SPEC "\
%{!nostdlib:%{fvtable-verify=std: -lvtv -u_vtable_map_vars_start -u_vtable_map_vars_end}\
%{fvtable-verify=preinit: -lvtv -u_vtable_map_vars_start -u_vtable_map_vars_end}}"
+#else
+#define VTABLE_VERIFICATION_SPEC "\
+%{fvtable-verify=none:} \
+%{fvtable-verify=std: \
+ %e-fvtable-verify=std is not supported in this configuration} \
+%{fvtable-verify=preinit: \
+ %e-fvtable-verify=preinit is not supported in this configuration}"
+#endif
#endif
#ifndef CHKP_SPEC