Date: Thu, 19 Sep 1996 12:32:15 -0700 (MST) From: Terry Lambert <terry@lambert.org> To: bde@zeta.org.au (Bruce Evans) Cc: brandon@glacier.cold.org, freebsd-hackers@FreeBSD.org Subject: Re: machine/endian.h: network byte order macros Message-ID: <199609191932.MAA01293@phaeton.artisoft.com> In-Reply-To: <199609190256.MAA23999@godzilla.zeta.org.au> from "Bruce Evans" at Sep 19, 96 12:56:47 pm
next in thread | previous in thread | raw e-mail | index | archive | help
> >Although trivial, the problem can be fixed by just removing '(' ')' from > >the outside of the macro, leaving '{' '}' there. This likely causes a > > No, this just breaks the statement-expression. `foo = { bar; } is a > syntax error even in gcc. Adding __extension__ before the statement- > expression seems to work right. I am being constantly surprised lately, it seems. I was under the impression that any statement could be used as an rvalue. Where you may be screwed is type conversion of the brace-enclosed statement, so it should be considered bad practice in any case (IMO). Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199609191932.MAA01293>