diff options
| author | Ehsan Akhgari <ehsan.akhgari@gmail.com> | 2016-01-25 21:14:52 +0000 |
|---|---|---|
| committer | Ehsan Akhgari <ehsan.akhgari@gmail.com> | 2016-01-25 21:14:52 +0000 |
| commit | d851833c9a76c267824cd58c155dd660546f59b1 (patch) | |
| tree | 5c101f16aa10b9ad3cb4e1a1d29409da2f8bc87e /clang/test/Driver/unknown-arg.c | |
| parent | 580ccca1922fc21d36dcf029bbf2e3845f3aa65d (diff) | |
| download | bcm5719-llvm-d851833c9a76c267824cd58c155dd660546f59b1.tar.gz bcm5719-llvm-d851833c9a76c267824cd58c155dd660546f59b1.zip | |
[MSVC Compat] Only warn for unknown clang-cl arguments
Summary:
MSVC's driver accepts all unknown arguments but warns about them. clang
by default rejects all unknown arguments. This causes issues
specifically with build systems such as autoconf which liberally pass
things such as $LDFLAGS to the compiler and expect everything to work.
This patch teaches clang-cl to ignore unknown driver arguments.
Reviewers: rnk
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D16511
llvm-svn: 258720
Diffstat (limited to 'clang/test/Driver/unknown-arg.c')
| -rw-r--r-- | clang/test/Driver/unknown-arg.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/clang/test/Driver/unknown-arg.c b/clang/test/Driver/unknown-arg.c index f834a0e8db9..09889bf1a87 100644 --- a/clang/test/Driver/unknown-arg.c +++ b/clang/test/Driver/unknown-arg.c @@ -1,5 +1,11 @@ // RUN: not %clang %s -cake-is-lie -%0 -%d -HHHH -munknown-to-clang-option -print-stats -funknown-to-clang-option 2>&1 | \ // RUN: FileCheck %s +// RUN: %clang_cl -cake-is-lie -%0 -%d -HHHH -munknown-to-clang-option -print-stats -funknown-to-clang-option -c -- %s 2>&1 | \ +// RUN: FileCheck %s --check-prefix=CL +// RUN: not %clang_cl -cake-is-lie -%0 -%d -HHHH -munknown-to-clang-option -print-stats -funknown-to-clang-option -c -Werror=unknown-argument -- %s 2>&1 | \ +// RUN: FileCheck %s --check-prefix=CL +// RUN: %clang_cl -cake-is-lie -%0 -%d -HHHH -munknown-to-clang-option -print-stats -funknown-to-clang-option -c -Wno-unknown-argument -- %s 2>&1 | \ +// RUN: FileCheck %s --check-prefix=SILENT --allow-empty // CHECK: unknown argument: '-cake-is-lie' // CHECK: unknown argument: '-%0' @@ -8,6 +14,15 @@ // CHECK: unknown argument: '-munknown-to-clang-option' // CHECK: unknown argument: '-print-stats' // CHECK: unknown argument: '-funknown-to-clang-option' +// CL: unknown argument ignored in clang-cl: '-cake-is-lie' +// CL: unknown argument ignored in clang-cl: '-%0' +// CL: unknown argument ignored in clang-cl: '-%d' +// CL: unknown argument ignored in clang-cl: '-HHHH' +// CL: unknown argument ignored in clang-cl: '-munknown-to-clang-option' +// CL: unknown argument ignored in clang-cl: '-print-stats' +// CL: unknown argument ignored in clang-cl: '-funknown-to-clang-option' +// SILENT-NOT: error +// SILENT-NOT: warning // RUN: %clang -S %s -o %t.s -Wunknown-to-clang-option 2>&1 | FileCheck --check-prefix=IGNORED %s |

