From 12acb42f2e6317a530fa01b5cf55a199231bfdce Mon Sep 17 00:00:00 2001 From: Thomas Huth Date: Sun, 2 May 2021 13:49:20 +0200 Subject: [PATCH 31/39] pc-bios/s390-ccw: Silence warning from Clang by marking panic() as noreturn MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit RH-Author: Jon Maloy RH-MergeRequest: 24: v7: Add support for building qemu-kvm with clang and safe-stack RH-Commit: [4/11] 806b776bf01b733e04664534641cf89d1cb48f1b (jmaloy/qemu-kvm-centos-jon) RH-Bugzilla: 1939509 1940132 RH-Acked-by: Danilo Cesar Lemes de Paula RH-Acked-by: Thomas Huth RH-Acked-by: Cornelia Huck When compiling the s390-ccw bios with Clang, the compiler emits a warning: pc-bios/s390-ccw/main.c:210:5: warning: variable 'found' is used uninitialized whenever switch default is taken [-Wsometimes-uninitialized] default: ^~~~~~~ pc-bios/s390-ccw/main.c:214:16: note: uninitialized use occurs here IPL_assert(found, "Boot device not found\n"); ^~~~~ It's a false positive, it only happens because Clang is not smart enough to see that the panic() function in the "default:" case can never return. Anyway, let's explicitely mark panic() with "noreturn" to shut up the warning. Message-Id: <20210502174836.838816-2-thuth@redhat.com> Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Cornelia Huck Signed-off-by: Thomas Huth (cherry picked from commit 679196a646c91b8ce9a97b0aa81ffb3776cf8046) Signed-off-by: Jon Maloy Signed-off-by: Miroslav Rezanina --- pc-bios/s390-ccw/s390-ccw.h | 1 + 1 file changed, 1 insertion(+) diff --git a/pc-bios/s390-ccw/s390-ccw.h b/pc-bios/s390-ccw/s390-ccw.h index 6cd92669e9..79db69ff54 100644 --- a/pc-bios/s390-ccw/s390-ccw.h +++ b/pc-bios/s390-ccw/s390-ccw.h @@ -89,6 +89,7 @@ bool menu_is_enabled_enum(void); #define MAX_BOOT_ENTRIES 31 +__attribute__ ((__noreturn__)) static inline void panic(const char *string) { sclp_print(string); -- 2.27.0