From: Daniel Dunbar Date: Mon, 16 Feb 2009 18:18:43 +0000 (+0000) Subject: ccc: @ arguments are only treated specially if X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=83d67909f9058816d1ab49910708c0ba3c4c8096;p=clang ccc: @ arguments are only treated specially if exists, otherwise gcc just treats as an input. - PR3591 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64640 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/ccc/ccclib/Arguments.py b/tools/ccc/ccclib/Arguments.py index 2e4c2064ea..5d20feaae1 100644 --- a/tools/ccc/ccclib/Arguments.py +++ b/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') + # @ 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: