diff options
author | dpatel <dpatel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-03-10 23:41:42 +0000 |
---|---|---|
committer | dpatel <dpatel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-03-10 23:41:42 +0000 |
commit | 89b4de106f74da75d1472cb68a77e094d8db39eb (patch) | |
tree | 984d98b935666a18064dc2fa49e37e242a2e6350 /gcc/gcc.h | |
parent | 783d704311b20433aedbd19840cccbe652c6cc22 (diff) | |
download | gcc-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.h | 22 |
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)); |