Subject: Re: Question regarding the array of size 0.
To: Greywolf <greywolf@starwolf.com>
From: Andrew Brown <atatat@atatdot.net>
List: tech-kern
Date: 03/20/2001 14:35:08
On Tue, Mar 20, 2001 at 11:31:40AM -0800, Greywolf wrote:
>On Tue, 20 Mar 2001, Shankar Agarwal wrote:
>
># Date: Tue, 20 Mar 2001 10:54:35 -0800
># From: Shankar Agarwal <shankar_agarwal@net.com>
># To: tech-kern@netbsd.org
># Cc: bsd hackers <freebsd-hackers@FreeBSD.ORG>
># Subject: Question regarding the array of size 0.
>#
># Hi All,
># #define syscallarg(x) \
># union { \
># register_t pad; \
># struct { x datum; } le; \
># struct { \
># int8_t pad[ (sizeof (register_t) < sizeof (x)) \
># ? 0 \
># : sizeof (register_t) - sizeof (x)]; \
># x datum; \
># } be; \
># }
>#
># struct sys_exit_args {
># syscallarg(int) rval;
># };
>
>I thought ?: were evaluated at run-time, not compile-time?
any halfway decent optimizing compiler ought to be reducing the number
of useless constants in its output, this being an example of such.
--
|-----< "CODE WARRIOR" >-----|
codewarrior@daemon.org * "ah! i see you have the internet
twofsonet@graffiti.com (Andrew Brown) that goes *ping*!"
andrew@crossbar.com * "information is power -- share the wealth."