summaryrefslogtreecommitdiff
path: root/gcc/gcc.h
diff options
context:
space:
mode:
authordpatel <dpatel@138bc75d-0d04-0410-961f-82ee72b054a4>2003-03-10 23:41:42 +0000
committerdpatel <dpatel@138bc75d-0d04-0410-961f-82ee72b054a4>2003-03-10 23:41:42 +0000
commit89b4de106f74da75d1472cb68a77e094d8db39eb (patch)
tree984d98b935666a18064dc2fa49e37e242a2e6350 /gcc/gcc.h
parent783d704311b20433aedbd19840cccbe652c6cc22 (diff)
downloadgcc-89b4de106f74da75d1472cb68a77e094d8db39eb.tar.gz
PR/9394
* gcc.c (DEFAULT_SWITCH_TAKES_ARG): Remove. (DEFAULT_WORD_SWITCH_TAKES_ARG): Remove. * gcc.h (DEFAULT_SWITCH_TAKES_ARG): Add. (DEFAULT_WORD_SWITCH_TAKES_ARG): Add. * cppspec.c (DEFAULT_SWTICH_TAKES_ARG): Remove. (DEFAULT_WORD_SWITCH_TAKES_ARG): Remove. cp * g++spec.c (lang_specific_driver): Use DEFAULT_WORD_SWITCH_TAKES_ARG. testsuite * g++.dg/cpp/c++_cmd_1.C: New test. * g++.dg/cpp/c++_cmd_1.h: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@64144 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/gcc.h')
-rw-r--r--gcc/gcc.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/gcc.h b/gcc/gcc.h
index feab0ef0710..06691bd9f6b 100644
--- a/gcc/gcc.h
+++ b/gcc/gcc.h
@@ -31,6 +31,28 @@ struct spec_function
const char *(*func) PARAMS ((int, const char **));
};
+/* This defines which switch letters take arguments. */
+
+#define DEFAULT_SWITCH_TAKES_ARG(CHAR) \
+ ((CHAR) == 'D' || (CHAR) == 'U' || (CHAR) == 'o' \
+ || (CHAR) == 'e' || (CHAR) == 'T' || (CHAR) == 'u' \
+ || (CHAR) == 'I' || (CHAR) == 'm' || (CHAR) == 'x' \
+ || (CHAR) == 'L' || (CHAR) == 'A' || (CHAR) == 'V' \
+ || (CHAR) == 'B' || (CHAR) == 'b')
+
+/* This defines which multi-letter switches take arguments. */
+
+#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, "idirafter") || !strcmp (STR, "iprefix") \
+ || !strcmp (STR, "iwithprefix") || !strcmp (STR, "iwithprefixbefore") \
+ || !strcmp (STR, "isystem") || !strcmp (STR, "-param") \
+ || !strcmp (STR, "specs") \
+ || !strcmp (STR, "MF") || !strcmp (STR, "MT") || !strcmp (STR, "MQ"))
+
+
/* These are exported by gcc.c. */
extern int do_spec PARAMS ((const char *));
extern void record_temp_file PARAMS ((const char *, int, int));