From 435405ac59b9334b06285e1192c693b497282a31 Mon Sep 17 00:00:00 2001 From: Pranith Kumar Date: Tue, 9 Aug 2016 15:02:26 -0400 Subject: Disable warn about left shifts of negative values It seems like there's no good reason for the compiler to exploit the undefinedness of left shifts. GCC explicitly documents that they do not use at all this possibility and, while they also say this is subject to change, they have been saying this for 10 years (since the wording appeared in the GCC 4.0 manual). Disable these warnings by passing in -Wno-shift-negative-value. Cc: Peter Maydell Cc: Markus Armbruster Cc: Laszlo Ersek Signed-off-by: Paolo Bonzini [pranith: forward-port part of patch to 2.7] Signed-off-by: Pranith Kumar --- HACKING | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'HACKING') diff --git a/HACKING b/HACKING index 058aa8fd49..20a910168d 100644 --- a/HACKING +++ b/HACKING @@ -158,6 +158,10 @@ painful. These are: * you may assume that right shift of a signed integer duplicates the sign bit (ie it is an arithmetic shift, not a logical shift) +In addition, QEMU assumes that the compiler does not use the latitude +given in C99 and C11 to treat aspects of signed '<<' as undefined, as +documented in the GNU Compiler Collection manual starting at version 4.0. + 7. Error handling and reporting 7.1 Reporting errors to the human user -- cgit v1.2.1