aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@gcc.gnu.org>1993-04-27 14:58:13 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>1993-04-27 14:58:13 +0000
commit3b39b94f8463fabe0ad1c7d1f897fe16f35e4a0a (patch)
tree3465c70e0d23b2c903d7c05c1fc7834ecb846069 /gcc
parentab034cfc0ae8017daee188d4e1ea971d77c30a1a (diff)
downloadgcc-3b39b94f8463fabe0ad1c7d1f897fe16f35e4a0a.zip
gcc-3b39b94f8463fabe0ad1c7d1f897fe16f35e4a0a.tar.gz
gcc-3b39b94f8463fabe0ad1c7d1f897fe16f35e4a0a.tar.bz2
Base WORD_SWITCH_TAKES_ARG on new macro DEFAULT_WORD_SWITCH_TAKES_ARG
From-SVN: r4247
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/i386/osfrose.h5
-rw-r--r--gcc/config/m68k/sun2.h6
-rw-r--r--gcc/config/m68k/sun3.h6
-rw-r--r--gcc/config/mips/osfrose.h5
-rw-r--r--gcc/config/nextstep.h7
-rw-r--r--gcc/config/sparc/sparc.h6
-rw-r--r--gcc/config/svr4.h5
-rw-r--r--gcc/gcc.c10
8 files changed, 19 insertions, 31 deletions
diff --git a/gcc/config/i386/osfrose.h b/gcc/config/i386/osfrose.h
index 3158b09a..ceeb95f 100644
--- a/gcc/config/i386/osfrose.h
+++ b/gcc/config/i386/osfrose.h
@@ -31,10 +31,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#undef WORD_SWITCH_TAKES_ARG
#define WORD_SWITCH_TAKES_ARG(STR) \
- (!strcmp (STR, "Tdata") || !strcmp (STR, "Ttext") \
- || !strcmp (STR, "Tbss") || !strcmp (STR, "include") \
- || !strcmp (STR, "imacros") || !strcmp (STR, "aux-info") \
- || !strcmp (STR, "pic-names"))
+ (DEFAULT_WORD_SWITCH_TAKES_ARG (STR) || !strcmp (STR, "pic-names"))
#define MASK_HALF_PIC 0x40000000 /* Mask for half-pic code */
#define MASK_HALF_PIC_DEBUG 0x20000000 /* Debug flag */
diff --git a/gcc/config/m68k/sun2.h b/gcc/config/m68k/sun2.h
index 3433829..792f503 100644
--- a/gcc/config/m68k/sun2.h
+++ b/gcc/config/m68k/sun2.h
@@ -48,10 +48,8 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
/* These compiler options take an argument. We ignore -target for now. */
#define WORD_SWITCH_TAKES_ARG(STR) \
- (!strcmp (STR, "Tdata") || !strcmp (STR, "Ttext") \
- || !strcmp (STR, "Tbss") || !strcmp (STR, "include") \
- || !strcmp (STR, "imacros") || !strcmp (STR, "target") \
- || !strcmp (STR, "assert") || !strcmp (STR, "aux-info"))
+ (DEFAULT_WORD_SWITCH_TAKES_ARG (STR) \
+ || !strcmp (STR, "target") || !strcmp (STR, "assert"))
/* Specify what to link with. */
diff --git a/gcc/config/m68k/sun3.h b/gcc/config/m68k/sun3.h
index 063f2ab..b8c67f6 100644
--- a/gcc/config/m68k/sun3.h
+++ b/gcc/config/m68k/sun3.h
@@ -72,10 +72,8 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
/* These compiler options take an argument. We ignore -target for now. */
#define WORD_SWITCH_TAKES_ARG(STR) \
- (!strcmp (STR, "Tdata") || !strcmp (STR, "Ttext") \
- || !strcmp (STR, "Tbss") || !strcmp (STR, "include") \
- || !strcmp (STR, "imacros") || !strcmp (STR, "target") \
- || !strcmp (STR, "assert") || !strcmp (STR, "aux-info"))
+ (DEFAULT_WORD_SWITCH_TAKES_ARG (STR) \
+ || !strcmp (STR, "target") || !strcmp (STR, "assert"))
/* -m68000 requires special flags to the assembler. */
diff --git a/gcc/config/mips/osfrose.h b/gcc/config/mips/osfrose.h
index f2afd62..ae29be8 100644
--- a/gcc/config/mips/osfrose.h
+++ b/gcc/config/mips/osfrose.h
@@ -27,10 +27,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#include "halfpic.h"
#define WORD_SWITCH_TAKES_ARG(STR) \
- (!strcmp (STR, "Tdata") || !strcmp (STR, "Ttext") \
- || !strcmp (STR, "Tbss") || !strcmp (STR, "include") \
- || !strcmp (STR, "imacros") || !strcmp (STR, "aux-info") \
- || !strcmp (STR, "pic-names"))
+ (DEFAULT_WORD_SWITCH_TAKES_ARG (STR) || !strcmp (STR, "pic-names"))
#define CPP_PREDEFINES "-DOSF -DOSF1 -Dbsd4_2 -DMIPSEL -Dhost_mips -Dmips -Dunix -DR3000 -DSYSTYPE_BSD"
diff --git a/gcc/config/nextstep.h b/gcc/config/nextstep.h
index dc2f020..58f490a 100644
--- a/gcc/config/nextstep.h
+++ b/gcc/config/nextstep.h
@@ -89,11 +89,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#undef WORD_SWITCH_TAKES_ARG
#define WORD_SWITCH_TAKES_ARG(STR) \
- (!strcmp (STR, "Ttext") ? 1 : \
- !strcmp (STR, "Tdata") ? 1 : \
- !strcmp (STR, "Tbss") ? 1 : \
- !strcmp (STR, "include") ? 1 : \
- !strcmp (STR, "imacros") ? 1 : \
+ (DEFAULT_WORD_SWITCH_TAKES_ARG (str) ? 1 : \
!strcmp (STR, "segalign") ? 1 : \
!strcmp (STR, "seg1addr") ? 1 : \
!strcmp (STR, "segaddr") ? 2 : \
@@ -103,7 +99,6 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
!strcmp (STR, "sectalign") ? 3 : \
!strcmp (STR, "segcreate") ? 3 : \
!strcmp (STR, "sectorder") ? 3 : \
- !strcmp (STR, "aux-info") ? 1 : \
!strcmp (STR, "siff-mask") ? 1 : \
!strcmp (STR, "siff-filter") ? 1 : \
!strcmp (STR, "siff-warning") ? 1 : \
diff --git a/gcc/config/sparc/sparc.h b/gcc/config/sparc/sparc.h
index b5a4346..19c6f19 100644
--- a/gcc/config/sparc/sparc.h
+++ b/gcc/config/sparc/sparc.h
@@ -72,10 +72,8 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
/* These compiler options take an argument. We ignore -target for now. */
#define WORD_SWITCH_TAKES_ARG(STR) \
- (!strcmp (STR, "Tdata") || !strcmp (STR, "Ttext") \
- || !strcmp (STR, "Tbss") || !strcmp (STR, "include") \
- || !strcmp (STR, "imacros") || !strcmp (STR, "target") \
- || !strcmp (STR, "assert") || !strcmp (STR, "aux-info"))
+ (DEFAULT_WORD_SWITCH_TAKES_ARG (STR) \
+ || !strcmp (STR, "target") || !strcmp (STR, "assert"))
/* Names to predefine in the preprocessor for this target machine. */
diff --git a/gcc/config/svr4.h b/gcc/config/svr4.h
index 866bc7e..64fa031 100644
--- a/gcc/config/svr4.h
+++ b/gcc/config/svr4.h
@@ -69,8 +69,9 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
there are no such switches except those implemented by GCC itself. */
#define WORD_SWITCH_TAKES_ARG(STR) \
- (!strcmp (STR, "include") || !strcmp (STR, "imacros") \
- || !strcmp (STR, "aux-info"))
+ (DEFAULT_WORD_SWITCH_TAKES_ARG (STR) \
+ && strcmp (STR, "Tdata") && strcmp (STR, "Ttext") \
+ && strcmp (STR, "Tbss"))
/* You should redefine CPP_PREDEFINES in any file which includes this one.
The definition should be appropriate for the type of target system
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 37957a6..8f0e703 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -394,11 +394,15 @@ static char *switches_need_spaces = SWITCHES_NEED_SPACES;
/* This defines which multi-letter switches take arguments. */
-#ifndef WORD_SWITCH_TAKES_ARG
-#define WORD_SWITCH_TAKES_ARG(STR) \
+#define DEFAULT_WORD_SWITCH_TAKES_ARG(STR) \
(!strcmp (STR, "Tdata") || !strcmp (STR, "Ttext") \
|| !strcmp (STR, "Tbss") || !strcmp (STR, "include") \
- || !strcmp (STR, "imacros") || !strcmp (STR, "aux-info"))
+ || !strcmp (STR, "imacros") || !strcmp (STR, "aux-info") \
+ || !strcmp (STR, "idirafter") || !strcmp (STR, "iprefix") \
+ || !strcmp (STR, "iwithprefix"))
+
+#ifndef WORD_SWITCH_TAKES_ARG
+#define WORD_SWITCH_TAKES_ARG(STR) DEFAULT_WORD_SWITCH_TAKES_ARG (STR)
#endif
/* Record the mapping from file suffixes for compilation specs. */