]> granicus.if.org Git - clang/commitdiff
[scan-build-py] Patch to fix "-analyzer-config" option
authorPetr Hosek <phosek@chromium.org>
Wed, 19 Jul 2017 00:29:41 +0000 (00:29 +0000)
committerPetr Hosek <phosek@chromium.org>
Wed, 19 Jul 2017 00:29:41 +0000 (00:29 +0000)
I noticed that when I use "-analyze-config" option in scan-build-py, it
behaves differently from original perl based scan-build.

For example, command:

$ scan-build -analyzer-config ipa=basic-inlining make

Will work without any issues on perl version of scan-build. But on
scan-build-py it will throw an error message "error reading
'ipa=basic-inlining'".

After debugging, it turns out that the scan-build-py does not put
"-analyzer-config" flag in front of the analyzer config flags (in this
case is the "ipa=basic-inlining") in the final clang command line. This
patch fixes this issue.

Patch by Haowei Wu

Differential Revision: https://reviews.llvm.org/D34489

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@308401 91177308-0d34-0410-b5e6-96231b3b80d8

tools/scan-build-py/libscanbuild/analyze.py

index a09c72389d762ecba4ffc51e29273db55ba6cbc5..b5614b5b6da050e8d6f21c1c00fe0a00af7076c1 100644 (file)
@@ -249,7 +249,7 @@ def analyzer_params(args):
     if args.output_format:
         result.append('-analyzer-output={0}'.format(args.output_format))
     if args.analyzer_config:
-        result.append(args.analyzer_config)
+        result.extend(['-analyzer-config', args.analyzer_config])
     if args.verbose >= 4:
         result.append('-analyzer-display-progress')
     if args.plugins: