From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43114) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UrDTm-0004qx-7X for qemu-devel@nongnu.org; Mon, 24 Jun 2013 16:35:15 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UrDTl-0007Em-10 for qemu-devel@nongnu.org; Mon, 24 Jun 2013 16:35:14 -0400 Received: from [2a03:4000:1::4e2f:c7ac:d] (port=44206 helo=v220110690675601.yourvserver.net) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UrDTk-0007Dt-PB for qemu-devel@nongnu.org; Mon, 24 Jun 2013 16:35:12 -0400 Message-ID: <51C8AD7C.9000500@weilnetz.de> Date: Mon, 24 Jun 2013 22:35:08 +0200 From: Stefan Weil MIME-Version: 1.0 References: <1372096130-24994-1-git-send-email-sw@weilnetz.de> <1372096130-24994-3-git-send-email-sw@weilnetz.de> <51C8ABBC.1070902@redhat.com> In-Reply-To: <51C8ABBC.1070902@redhat.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 2/3] spapr: Fix compiler warning for some versions of gcc (h_remove) List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: qemu-devel , Alexander Graf , David Gibson Am 24.06.2013 22:27, schrieb Paolo Bonzini: > Il 24/06/2013 19:48, Stefan Weil ha scritto: >> i686-w64-mingw32-gcc (GCC) 4.6.3 from Debian wheezy reports this warning: >> >> hw/ppc/spapr_hcall.c:188:1: warning: >> control reaches end of non-void function [-Wreturn-type] >> >> Replacing the 4th case REMOVE_HW (which is currently unused) by the default >> case fixes this warning. >> >> The assertion is dead code because all possible cases are handled in the >> switch statements, so remove it. This avoids future warnings from static >> code analyzers. >> >> Signed-off-by: Stefan Weil >> --- >> hw/ppc/spapr_hcall.c | 4 +--- >> 1 file changed, 1 insertion(+), 3 deletions(-) >> >> diff --git a/hw/ppc/spapr_hcall.c b/hw/ppc/spapr_hcall.c >> index 00f21f5..d49ce53 100644 >> --- a/hw/ppc/spapr_hcall.c >> +++ b/hw/ppc/spapr_hcall.c >> @@ -180,11 +180,9 @@ static target_ulong h_remove(PowerPCCPU *cpu, sPAPREnvironment *spapr, >> case REMOVE_PARM: >> return H_PARAMETER; >> >> - case REMOVE_HW: >> + default: /* REMOVE_HW */ >> return H_HARDWARE; >> } >> - >> - assert(0); >> } >> >> #define H_BULK_REMOVE_TYPE 0xc000000000000000ULL >> > Does s/assert(0)/abort()/ fix the warning too? That's clearer. > > Paolo Yes, that also fixes this warning. A better compiler or a static code checker might then complain about dead code because all possible cases are handled in the switch statement. Stefan