diff options
| author | Alexander Egorenkov <eaibmz@gmail.com> | 2022-01-14 15:25:03 +0100 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2022-01-14 16:11:46 +0100 |
| commit | 51cf8ae5132876ddfdbf602fd481f5b0657f7f32 (patch) | |
| tree | 3d24878b5f6a9d504c343130a5e8cfcedd84bd2c /sys | |
| parent | 53e00b45ed2ce56705c9b73ae338aff421402438 (diff) | |
sys/targets: fix check of compiler flag for clang
clang doesn't fail if an unknown flag is specified w/o specifying -Werror
as well.
[syzkaller]# clang -x c++ - -o /dev/null -Wtada < test.c
warning: unknown warning option '-Wtada' [-Wunknown-warning-option]
1 warning generated.
[syzkaller]# echo $?
0
[syzkaller]# clang -x c++ - -o /dev/null -Wtada -Werror < test.c
error: unknown warning option '-Wtada' [-Werror,-Wunknown-warning-option]
[syzkaller]# echo $?
1
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/targets/targets.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/targets/targets.go b/sys/targets/targets.go index 7255f7963..c61e679bc 100644 --- a/sys/targets/targets.go +++ b/sys/targets/targets.go @@ -862,7 +862,7 @@ func (target *Target) lazyInit() { } func checkFlagSupported(target *Target, flag string) bool { - cmd := exec.Command(target.CCompiler, "-x", "c++", "-", "-o", "/dev/null", flag) + cmd := exec.Command(target.CCompiler, "-x", "c++", "-", "-o", "/dev/null", "-Werror", flag) cmd.Stdin = strings.NewReader(simpleProg) return cmd.Run() == nil } |
