From: Daniel Dunbar Date: Mon, 30 Mar 2009 18:13:26 +0000 (+0000) Subject: Driver: Unbreak ArgList::hasFlag. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=776dbd8b0e4414e5002ffe6e8bd9a7e79879521d;p=clang Driver: Unbreak ArgList::hasFlag. - [driver] clang does not have -msoft-float hooked up. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68044 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Driver/ArgList.cpp b/lib/Driver/ArgList.cpp index 2e526ab5d5..6d19f1acc5 100644 --- a/lib/Driver/ArgList.cpp +++ b/lib/Driver/ArgList.cpp @@ -51,7 +51,7 @@ Arg *ArgList::getLastArg(options::ID Id0, options::ID Id1, bool Claim) const { bool ArgList::hasFlag(options::ID Pos, options::ID Neg, bool Default) const { Arg *PosA = getLastArg(Pos); - Arg *NegA = getLastArg(Pos); + Arg *NegA = getLastArg(Neg); if (PosA && NegA) return NegA->getIndex() < PosA->getIndex(); if (PosA) return true; diff --git a/test/Driver/flags.c b/test/Driver/flags.c new file mode 100644 index 0000000000..53f3995f39 --- /dev/null +++ b/test/Driver/flags.c @@ -0,0 +1,9 @@ +// RUN: clang -ccc-host-triple i386-apple-darwin9 -### -S -msoft-float %s 2> %t.log && +// RUN: grep '"--soft-float"' %t.log && + +// RUN: clang -ccc-host-triple i386-apple-darwin9 -### -S -msoft-float -mno-soft-float %s 2> %t.log && +// RUN: grep '"--soft-float"' %t.log | count 0 && + +// RUN: clang -ccc-host-triple i386-apple-darwin9 -### -S -mno-soft-float %s -msoft-float 2> %t.log && +// RUN: grep '"--soft-float"' %t.log +