diff options
author | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-02-14 19:16:34 +0000 |
---|---|---|
committer | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-02-14 19:16:34 +0000 |
commit | 9f5eade01a475b766d3c95322a0f2f2e97fae021 (patch) | |
tree | fb8064f1c3f33b9d74b293b0466784e66405ef83 /gcc/ada/gcc-interface/misc.c | |
parent | aa44ed84ca6a99c95220dd9bdb6c70ce603cc9cd (diff) |
* gcc-interface/misc.c (gnat_init_options): Do not concatenate -I and
its argument, except for the special -I- switch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@170150 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/gcc-interface/misc.c')
-rw-r--r-- | gcc/ada/gcc-interface/misc.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/gcc/ada/gcc-interface/misc.c b/gcc/ada/gcc-interface/misc.c index 360ebab8aed3..4f7a5e1da1dc 100644 --- a/gcc/ada/gcc-interface/misc.c +++ b/gcc/ada/gcc-interface/misc.c @@ -195,13 +195,12 @@ gnat_init_options (unsigned int decoded_options_count, || num_elements == 0) continue; - if (decoded_options[i].opt_index == OPT_I) - { - gcc_assert (num_elements == 2); - save_argv[save_argc++] - = concat (decoded_options[i].canonical_option[0], - decoded_options[i].canonical_option[1], NULL); - } + /* Deal with -I- specially since it must be a single switch. */ + if (decoded_options[i].opt_index == OPT_I + && num_elements == 2 + && decoded_options[i].canonical_option[1][0] == '-' + && decoded_options[i].canonical_option[1][1] == '\0') + save_argv[save_argc++] = "-I-"; else { gcc_assert (num_elements >= 1 && num_elements <= 2); |