qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Pierrick Bouvier <pierrick.bouvier@linaro.org>
To: "Philippe Mathieu-Daudé" <philmd@linaro.org>, qemu-devel@nongnu.org
Cc: sw@weilnetz.de, kkostiuk@redhat.com, clg@kaod.org,
	richard.henderson@linaro.org, alex.bennee@linaro.org
Subject: Re: [PATCH 4/4] target/ppc: fix warning with clang-15
Date: Tue, 14 Feb 2023 08:57:52 +0100	[thread overview]
Message-ID: <67ea040b-d52e-53e2-4927-841d534cb72d@linaro.org> (raw)
In-Reply-To: <f2184bc0-6f02-4719-3f43-221d641c7ec6@linaro.org>

On 2/14/23 08:14, Philippe Mathieu-Daudé wrote:
> On 13/2/23 17:13, Pierrick Bouvier wrote:
>> When compiling for windows-arm64 using clang-15, it reports a sometimes
>> uninitialized variable. This seems to be a false positive, as a default
>> case guards switch expressions, preventing to return an uninitialized
>> value, but clang seems unhappy with assert definition.
>>
>> Setting the rnd variable to zero does not hurt anyway.
>>
>> ../target/ppc/dfp_helper.c:141:13: error: variable 'rnd' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]                                                                              assert(0); /* cannot get here */                                                                                                                                                                                    ^~~~~~~~~
>> ../include/qemu/osdep.h:229:20: note: expanded from macro 'assert'                                                                                                                                        #define assert(x)  g_assert(x)                                                                                                                                                                                                         ^~~~~~~~~~~
>> /clangarm64/bin/../include/glib-2.0/glib/gtestutils.h:235:49: note: expanded from macro 'g_assert'                                                                                                                               if G_LIKELY (expr) ; else \
>>                                                   ^~~~~~~~~~~~~~~
>> /clangarm64/bin/../include/glib-2.0/glib/gmacros.h:1186:25: note: expanded from macro 'G_LIKELY'
>>                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> ../target/ppc/dfp_helper.c:144:42: note: uninitialized use occurs here
>>       decContextSetRounding(&dfp->context, rnd);
>>
>> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>> ---
>>    target/ppc/dfp_helper.c | 4 ++--
>>    1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/target/ppc/dfp_helper.c b/target/ppc/dfp_helper.c
>> index cc024316d5..0b4b280683 100644
>> --- a/target/ppc/dfp_helper.c
>> +++ b/target/ppc/dfp_helper.c
>> @@ -69,7 +69,7 @@ struct PPC_DFP {
>>    
>>    static void dfp_prepare_rounding_mode(decContext *context, uint64_t fpscr)
>>    {
>> -    enum rounding rnd;
>> +    enum rounding rnd = 0;
>>    
>>        switch ((fpscr & FP_DRN) >> FPSCR_DRN0) {
>>        case 0:
>> @@ -106,7 +106,7 @@ static void dfp_prepare_rounding_mode(decContext *context, uint64_t fpscr)
>>    static void dfp_set_round_mode_from_immediate(uint8_t r, uint8_t rmc,
>>                                                      struct PPC_DFP *dfp)
>>    {
>> -    enum rounding rnd;
>> +    enum rounding rnd = 0;
> 
> Could DEC_ROUND_DEFAULT be clearer?
> 

I missed that macro definition, and that seems like a good default 
value. I'll change to this.

  reply	other threads:[~2023-02-14  7:58 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-13 16:13 [PATCH 0/4] Adds support for running QEMU natively on windows-arm64 Pierrick Bouvier
2023-02-13 16:13 ` [PATCH 1/4] util/cacheflush: fix illegal instruction " Pierrick Bouvier
2023-02-14 16:44   ` Peter Maydell
2023-02-14 17:02     ` Richard Henderson
2023-02-15 12:49     ` Pierrick Bouvier
2023-02-15 18:22       ` Richard Henderson
2023-02-16 12:53         ` Pierrick Bouvier
2023-02-13 16:13 ` [PATCH 2/4] sysemu/os-win32: fix setjmp/longjmp " Pierrick Bouvier
2023-02-14  7:11   ` Philippe Mathieu-Daudé
2023-02-14  8:16     ` Pierrick Bouvier
2023-02-13 16:13 ` [PATCH 3/4] qga/vss-win32: fix warning for clang++-15 Pierrick Bouvier
2023-02-13 16:20   ` Konstantin Kostiuk
2023-02-13 18:08   ` Cédric Le Goater
2023-02-13 16:13 ` [PATCH 4/4] target/ppc: fix warning with clang-15 Pierrick Bouvier
2023-02-13 18:08   ` Cédric Le Goater
2023-02-14  7:14   ` Philippe Mathieu-Daudé
2023-02-14  7:57     ` Pierrick Bouvier [this message]
2023-02-14 18:10   ` Richard Henderson
2023-02-15 10:58     ` Pierrick Bouvier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=67ea040b-d52e-53e2-4927-841d534cb72d@linaro.org \
    --to=pierrick.bouvier@linaro.org \
    --cc=alex.bennee@linaro.org \
    --cc=clg@kaod.org \
    --cc=kkostiuk@redhat.com \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=sw@weilnetz.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).