This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
3.1 PATCH: __LANGUAGE_C_PLUS_PLUS fixes for Alpha
- To: gcc-patches at gcc dot gnu dot org
- Subject: 3.1 PATCH: __LANGUAGE_C_PLUS_PLUS fixes for Alpha
- From: Rainer Orth <ro at TechFak dot Uni-Bielefeld dot DE>
- Date: Fri, 8 Jun 2001 13:33:29 +0200 (MEST)
Here's the alpha patch corresponding to
http://gcc.gnu.org/ml/gcc-patches/2001-06/msg00358.html
Bootstrapped on alpha-dec-osf5.1 (branch only) with no regressions. Ok for
mainline?
Rainer
-----------------------------------------------------------------------------
Rainer Orth, Faculty of Technology, Bielefeld University
Email: ro@TechFak.Uni-Bielefeld.DE
Thu Jun 7 20:07:29 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* config/alpha/alpha.h (CPP_SPEC): Don't define _LANGUAGE_C and
variants for .cpp/.cp/.c++ files.
Move definition of __LANGUAGE_C_PLUS_PLUS ...
(CPLUSPLUS_CPP_SPEC): ... here.
Index: gcc/config/alpha/alpha.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/alpha/alpha.h,v
retrieving revision 1.113.4.2
diff -u -p -r1.113.4.2 alpha.h
--- alpha.h 2001/05/13 07:10:04 1.113.4.2
+++ alpha.h 2001/06/08 10:26:49
@@ -21,14 +21,20 @@ the Free Software Foundation, 59 Temple
Boston, MA 02111-1307, USA. */
+/* For C++ we need to ensure that __LANGUAGE_C_PLUS_PLUS is defined independent
+ of the source file extension. */
+#define CPLUSPLUS_CPP_SPEC "\
+-D__LANGUAGE_C_PLUS_PLUS__ -D__LANGUAGE_C_PLUS_PLUS -D__cplusplus \
+%(cpp) \
+"
+
/* Write out the correct language type definition for the header files.
Unless we have assembler language, write out the symbols for C. */
#define CPP_SPEC "\
%{!undef:\
%{.S:-D__LANGUAGE_ASSEMBLY__ -D__LANGUAGE_ASSEMBLY %{!ansi:-DLANGUAGE_ASSEMBLY }}\
-%{.cc|.cxx|.C:-D__LANGUAGE_C_PLUS_PLUS__ -D__LANGUAGE_C_PLUS_PLUS -D__cplusplus }\
%{.m:-D__LANGUAGE_OBJECTIVE_C__ -D__LANGUAGE_OBJECTIVE_C }\
-%{!.S:%{!.cc:%{!.cxx:%{!.C:%{!.m:-D__LANGUAGE_C__ -D__LANGUAGE_C %{!ansi:-DLANGUAGE_C }}}}}}\
+%{!.S:%{!.cc:%{!.cxx:%{!.cpp:%{!.cp:%{!.c++:%{!.C:%{!.m:-D__LANGUAGE_C__ -D__LANGUAGE_C %{!ansi:-DLANGUAGE_C }}}}}}}}}\
%{mieee:-D_IEEE_FP }\
%{mieee-with-inexact:-D_IEEE_FP -D_IEEE_FP_INEXACT }}\
%(cpp_cpu) %(cpp_subtarget)"