From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=45617 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1P5Ljt-0007Ua-Ju for qemu-devel@nongnu.org; Mon, 11 Oct 2010 13:00:42 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1P5Ljr-0003R4-PE for qemu-devel@nongnu.org; Mon, 11 Oct 2010 13:00:41 -0400 Received: from mx1.redhat.com ([209.132.183.28]:42291) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1P5Ljr-0003Qi-J9 for qemu-devel@nongnu.org; Mon, 11 Oct 2010 13:00:39 -0400 From: Markus Armbruster Subject: Re: [Qemu-devel] [PATCH 03/12] eepro100: initialize a variable in all cases References: <4CB3364D.4010707@mail.berlios.de> Date: Mon, 11 Oct 2010 19:00:31 +0200 In-Reply-To: <4CB3364D.4010707@mail.berlios.de> (Stefan Weil's message of "Mon, 11 Oct 2010 18:07:41 +0200") Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefan Weil Cc: Blue Swirl , qemu-devel Stefan Weil writes: > Am 11.10.2010 16:53, schrieb Markus Armbruster: >> Blue Swirl writes: >> >>> Compiling with GCC 4.6.0 20100925 produced warnings: >>> /src/qemu/hw/eepro100.c: In function 'eepro100_read4': >>> /src/qemu/hw/eepro100.c:1351:14: error: 'val' may be used >>> uninitialized in this function [-Werror=uninitialized] >>> /src/qemu/hw/eepro100.c: In function 'eepro100_read2': >>> /src/qemu/hw/eepro100.c:1328:14: error: 'val' may be used >>> uninitialized in this function [-Werror=uninitialized] >>> /src/qemu/hw/eepro100.c: In function 'eepro100_read1': >>> /src/qemu/hw/eepro100.c:1285:13: error: 'val' may be used >>> uninitialized in this function [-Werror=uninitialized] >>> >>> Fix by initializing 'val' at start. >> >> I don't like sweeping bugs under the carpet like that. The initial >> value is used when and only when the emulation is buggy. We doubt it >> can happen. If we truly believe it can't happen, assert it. If we just >> doubt it, log it. > > Markus, that patch would only be an intermediate solution > which helps to fix a certain class of compiler warnings. > > I already promised to test the code with assertions > and started doing so (see my qemu repository > http://repo.or.cz/w/qemu/ar7.git/history/HEAD:/hw/eepro100.c). > Testing takes some time, so the intermediate solution > can be reasonable. > > But nothing will be swept under the carpet! An intermediate solution could use a comment, but as long as you take care of the real solution, it's not that important.