X-MimeOLE: Produced By Microsoft Exchange V6.5
Received: by onstor-exch02.onstor.net 
	id <01C7D3C5.85F1010A@onstor-exch02.onstor.net>; Tue, 31 Jul 2007 14:52:51 -0800
MIME-Version: 1.0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-class: urn:content-classes:message
Subject: Coverity issue
Date: Tue, 31 Jul 2007 14:52:51 -0800
Message-ID: <BB375AF679D4A34E9CA8DFA650E2B04E030E3667@onstor-exch02.onstor.net>
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
Thread-Topic: Coverity issue
Thread-Index: AcfTxYZGi1atwtxfT+O2ZlqdHmfqLA==
From: "Mike Lee" <mike.lee@onstor.com>
To: "Amit Bothra" <amit.bothra@onstor.com>
Cc: "dl-Software" <dl-software@onstor.com>

Hi Amit:

Unfortunately, I was not able to find the details behind the coverity =
rule:
  Event useless_type_qualifier_on_return_type: type qualifier on return =
type is meaningless
in the manuals I got from coverity training.

However, based on what I googled, I think Coverity is complaining about =
line 23 below, where we typedef'ed noreturn as "volatile void" and then =
use it as return type for a function.  The use of "volatile" on a =
function return type has no meaning; "volatile" is only meaningful it is =
applied to a variable type.

22   	#if defined(__GNUC__)
23   	typedef volatile void noreturn;
24   	#else
25   	typedef void noreturn;
26   	#endif

I believe our choices are:
a. change definition of noreturn to be line 25 only
b. change signature of fs_abort() to be of type void

I favor the second option since it is more localized, but I'd respect =
others' opinion.

Thanks.
-Mike

