summaryrefslogtreecommitdiff
path: root/tools/scan-build
diff options
context:
space:
mode:
authorJordan Rose <jordan_rose@apple.com>2013-10-22 18:55:18 +0000
committerJordan Rose <jordan_rose@apple.com>2013-10-22 18:55:18 +0000
commite233eea67cc5fa62d890d0eea910b56bbc5d2723 (patch)
treece6740c461cb9bd1ae633c34a2cece6b076eceaf /tools/scan-build
parent6d87e65b8fd01b36c7d3dd121462cb95f94404d6 (diff)
downloadclang-e233eea67cc5fa62d890d0eea910b56bbc5d2723.tar.gz
[analyzer] scan-build: Handle -m* option wildcard after compiler/linker flags.
Some of the shared compiler/linker flags start with -m, so they've been getting passed to the compiler only since r180073. Now, the -m* wildcard is processed after the shared flags and the ignored flags. Found by Laszlo Nagy! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193184 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/scan-build')
-rwxr-xr-xtools/scan-build/ccc-analyzer9
1 files changed, 5 insertions, 4 deletions
diff --git a/tools/scan-build/ccc-analyzer b/tools/scan-build/ccc-analyzer
index 5f6314882b..b463ec041e 100755
--- a/tools/scan-build/ccc-analyzer
+++ b/tools/scan-build/ccc-analyzer
@@ -484,10 +484,6 @@ foreach (my $i = 0; $i < scalar(@ARGV); ++$i) {
while ($Cnt > 0) { ++$i; --$Cnt; push @CompileOpts, $ARGV[$i]; }
next;
}
- if ($Arg =~ /-m.*/) {
- push @CompileOpts,$Arg;
- next;
- }
# Handle the case where there isn't a space after -iquote
if ($Arg =~ /-iquote.*/) {
push @CompileOpts,$Arg;
@@ -549,6 +545,11 @@ foreach (my $i = 0; $i < scalar(@ARGV); ++$i) {
next;
}
+ if ($Arg =~ /-m.*/) {
+ push @CompileOpts,$Arg;
+ next;
+ }
+
# Language.
if ($Arg eq '-x') {
$Lang = $ARGV[$i+1];