diff options
| author | Daniel Dunbar <daniel@zuster.org> | 2009-02-16 18:18:43 +0000 | 
|---|---|---|
| committer | Daniel Dunbar <daniel@zuster.org> | 2009-02-16 18:18:43 +0000 | 
| commit | a1c37501ed195d1e03b9871a09bdcf9d9a0559e5 (patch) | |
| tree | 00124c1c558ad160a0b1de6e509d3d5d28bdb886 /clang/tools/ccc/ccclib/Arguments.py | |
| parent | 75a45ba2a4535af287da78766ea500964e8ef2b6 (diff) | |
| download | bcm5719-llvm-a1c37501ed195d1e03b9871a09bdcf9d9a0559e5.tar.gz bcm5719-llvm-a1c37501ed195d1e03b9871a09bdcf9d9a0559e5.zip | |
ccc: @<filename> arguments are only treated specially if <filename>
exists, otherwise gcc just treats as an input.
 - PR3591
llvm-svn: 64640
Diffstat (limited to 'clang/tools/ccc/ccclib/Arguments.py')
| -rw-r--r-- | clang/tools/ccc/ccclib/Arguments.py | 10 | 
1 files changed, 8 insertions, 2 deletions
| diff --git a/clang/tools/ccc/ccclib/Arguments.py b/clang/tools/ccc/ccclib/Arguments.py index 2e4c2064ead..5d20feaae1c 100644 --- a/clang/tools/ccc/ccclib/Arguments.py +++ b/clang/tools/ccc/ccclib/Arguments.py @@ -1,3 +1,4 @@ +import os  ### @@ -1114,8 +1115,13 @@ class OptionParser:                  # still take them as arguments).                  pass              elif a[0] == '@': -                # FIXME: Handle '@' -                raise InvalidArgumentsError('@ style argument lists are unsupported') +                # @<filename> is only an argument list if it actually +                # exists, otherwise it is treated like an input. +                if os.path.exists(a[1:]): +                    # FIXME: Handle '@' +                    raise InvalidArgumentsError('@ style argument lists are unsupported') +                else: +                    args.append(PositionalArg(i, self.inputOption))              elif a[0] == '-' and a != '-':                  args.append(self.lookupOptForArg(i, a, it))              else: | 

