From 51cf8ae5132876ddfdbf602fd481f5b0657f7f32 Mon Sep 17 00:00:00 2001 From: Alexander Egorenkov Date: Fri, 14 Jan 2022 15:25:03 +0100 Subject: 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 --- sys/targets/targets.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sys') 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 } -- cgit mrf-deployment