From: Mingli Yu Date: Mon, 22 Apr 2019 08:41:32 +0000 (+0800) Subject: gcc-sanitizers: fix -Werror=maybe-uninitialized issue X-Git-Tag: uninative-2.5~381 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=d8d657f082d4a86f93ce810e5d99eb5c93333d8a;p=openembedded-core.git gcc-sanitizers: fix -Werror=maybe-uninitialized issue When DEBUG_BUILD = "1" added in local.conf, there comes below build error when "bitbake gcc-sanitizers": | ./../../../../../../../../work-shared/gcc-8.3.0-r0/gcc-8.3.0/libsanitizer/libbacktrace/../../libbacktrace/elf.c: In function 'elf_is_symlink': | ../../../../../../../../../work-shared/gcc-8.3.0-r0/gcc-8.3.0/libsanitizer/libbacktrace/../../libbacktrace/elf.c:772:21: error: 'st.st_mode' may be used uninitialized in this function [-Werror=maybe-uninitialized] | return S_ISLNK (st.st_mode); After commit[16643b0322 bitbake.conf: Use -Og in DEBUG_OPTIMIZATION] introduced, "-Og" added to compiler when debug build enabled. Per https://gcc.gnu.org/ml/gcc-patches/2019-04/msg00315.html, the gcc upstream thinks the warning is a false positive and suggests to use -O2 rather than -Og or -O1 when compiling that file, so pass -Wno-error to compiler when -Og is used to silence the error. Signed-off-by: Mingli Yu Signed-off-by: Richard Purdie --- diff --git a/meta/recipes-devtools/gcc/gcc-sanitizers.inc b/meta/recipes-devtools/gcc/gcc-sanitizers.inc index e5e84526fa..8b1d1c94bf 100644 --- a/meta/recipes-devtools/gcc/gcc-sanitizers.inc +++ b/meta/recipes-devtools/gcc/gcc-sanitizers.inc @@ -45,6 +45,9 @@ INHIBIT_DEFAULT_DEPS = "1" ALLOW_EMPTY_${PN} = "1" DEPENDS = "gcc-runtime virtual/${TARGET_PREFIX}gcc" +# used to fix ../../../../../../../../../work-shared/gcc-8.3.0-r0/gcc-8.3.0/libsanitizer/libbacktrace/../../libbacktrace/elf.c:772:21: error: 'st.st_mode' may be used uninitialized in this function [-Werror=maybe-uninitialized] +DEBUG_OPTIMIZATION_append = " -Wno-error" + BBCLASSEXTEND = "nativesdk" PACKAGES = "${PN} ${PN}-dbg"