Date: Tue, 1 Feb 2011 11:25:01 +0000 From: Alexander Best <arundel@freebsd.org> To: Roman Divacky <rdivacky@freebsd.org> Cc: freebsd-hackers@freebsd.org Subject: Re: empty function macros Message-ID: <20110201112501.GA99666@freebsd.org> In-Reply-To: <20110201081236.GA63338@freebsd.org> References: <20110130172941.GA10701@freebsd.org> <20110131075439.GA49765@freebsd.org> <20110131095158.GC98011@freebsd.org> <20110201081236.GA63338@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue Feb 1 11, Roman Divacky wrote: > On Mon, Jan 31, 2011 at 09:51:58AM +0000, Alexander Best wrote: > > On Mon Jan 31 11, Roman Divacky wrote: > > > no problem with this with clang :) > > > > hmmmmm....so compiling the following code > > > > int > > main(int argc, char **argv) > > { > > if (1<2) > > ; > > } > > > > with clang -Werror code.c -o code works for you? > > if (1<2) > ; > > gives a warning (and it should), on the other hand > > #define NOTHING > > if (1<2) > NOTHING; > > does not warn, which is what you want right? actually #define NOTHING int main(int argc, char **argv) { if (1<2) NOTHING; return (0); } *does* warn for me: otaku% clang test.c -o test test.c:7:12: warning: if statement has empty body [-Wempty-body] NOTHING; ^ 1 warning generated. ..gcc on the otherhand will only warn with -Wextra. so the questions still stands: should #define NOTHING be replaced with #define NOTHING do { } while (0) ? cheers. alex -- a13x
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110201112501.GA99666>