diff options
| author | sayle <sayle@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-02-24 14:52:42 +0000 |
|---|---|---|
| committer | sayle <sayle@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-02-24 14:52:42 +0000 |
| commit | c5c22354ea3b9974dbb8491a86dd930d06d53bf0 (patch) | |
| tree | e3e3b2fca7c52cee52b67b3dc472644aeb74d9d3 | |
| parent | 4e29e79f3acc81e1ba31c40752d0bef8ace3424f (diff) | |
| download | ppe42-gcc-c5c22354ea3b9974dbb8491a86dd930d06d53bf0.tar.gz ppe42-gcc-c5c22354ea3b9974dbb8491a86dd930d06d53bf0.zip | |
* gcc.c (do_spec_1) ['{']: Handle pending argument upon return
from handle_braces in "%{...}".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@63357 138bc75d-0d04-0410-961f-82ee72b054a4
| -rw-r--r-- | gcc/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/gcc.c | 14 |
2 files changed, 18 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2efa9116bd1..1cdc6428f67 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2003-02-24 Roger Sayle <roger@eyesopen.com> + + * gcc.c (do_spec_1) ['{']: Handle pending argument upon return + from handle_braces in "%{...}". + 2003-02-24 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/sh.c (TARGET_HAVE_TLS): Conditionally define. diff --git a/gcc/gcc.c b/gcc/gcc.c index 52ca4242021..937f47163f8 100644 --- a/gcc/gcc.c +++ b/gcc/gcc.c @@ -1,6 +1,6 @@ /* Compiler driver program that can handle many languages. Copyright (C) 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. This file is part of GCC. @@ -5154,6 +5154,18 @@ do_spec_1 (spec, inswitch, soft_matched_part) p = handle_braces (p); if (p == 0) return -1; + /* End any pending argument. */ + if (arg_going) + { + obstack_1grow (&obstack, 0); + string = obstack_finish (&obstack); + if (this_is_library_file) + string = find_file (string); + store_arg (string, delete_this_arg, this_is_output_file); + if (this_is_output_file) + outfiles[input_file_number] = string; + arg_going = 0; + } break; case ':': |

