summaryrefslogtreecommitdiffstats
path: root/clang/tools
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-02-16 18:18:43 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-02-16 18:18:43 +0000
commita1c37501ed195d1e03b9871a09bdcf9d9a0559e5 (patch)
tree00124c1c558ad160a0b1de6e509d3d5d28bdb886 /clang/tools
parent75a45ba2a4535af287da78766ea500964e8ef2b6 (diff)
downloadbcm5719-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')
-rw-r--r--clang/tools/ccc/ccclib/Arguments.py10
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:
OpenPOWER on IntegriCloud