Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Jan 2003 09:28:23 -0800 (PST)
From:      John Polstra <jdp@polstra.com>
To:        current@freebsd.org
Cc:        phk@freebsd.org
Subject:   Re: Please don't define away DEBUGPRINTF and similar...
Message-ID:  <200301291728.h0THSNIB070615@vashon.polstra.com>
In-Reply-To: <6474.1043830818@critter.freebsd.dk>
References:  <6474.1043830818@critter.freebsd.dk>

next in thread | previous in thread | raw e-mail | index | archive | help
In article <6474.1043830818@critter.freebsd.dk>,
Poul-Henning Kamp  <phk@FreeBSD.ORG> wrote:
> 
> I am currently letting FlexeLint loose on the kernel again, and I have
> turned my attention to a new warning from it:
> 
>                 _
>                 return (err);
> ../../../dev/usb/usb_subr.c  604  Warning 548: else expected
> 
> Initally I ignored these warnings because the couple of them which
> I looked at were actually ok, but now that I looked through all of
> them I uncovered a couple of bugs which all follow the same pattern,
> which I think I can best illustrate by quoting a randomly chosen
> case:
> 
> 	#ifdef USB_DEBUG
> 	#define DPRINTF(x)      if (usbdebug) logprintf x
> 	#define DPRINTFN(n,x)   if (usbdebug>(n)) logprintf x
> 	extern int usbdebug;
> 	#else
> 	#define DPRINTF(x)
> 	#define DPRINTFN(n,x)
> 	#endif
> 
> 	[...]
> 	if (index == USB_UNCONFIG_INDEX) {
> 		/* We are unconfiguring the device, so leave unallocated. */
> 		DPRINTF(("usbd_set_config_index: set config 0\n"));
> 		err = usbd_set_config(dev, USB_UNCONFIG_NO);
> 		if (err)
> 			DPRINTF(("usbd_set_config_index: setting config=0 "
> 				 "failed, error=%s\n", usbd_errstr(err)));
> 		return (err);
> 	}

It's complaining because of the empty statement (";") in the if
clause, I suppose.  Does it shut up if you define the macros like
this in the disabled case?


       #define DPRINTF(x)	((void)0)
       #define DPRINTFN(n,x)	((void)0)

John
-- 
  John Polstra
  John D. Polstra & Co., Inc.                        Seattle, Washington USA
  "Disappointment is a good sign of basic intelligence."  -- Chögyam Trungpa


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200301291728.h0THSNIB070615>