Subject: Re: Question regarding the array of size 0.
To: Shankar Agarwal <shankar_agarwal@net.com>
From: Greywolf <greywolf@starwolf.com>
List: tech-kern
Date: 03/20/2001 11:31:40
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,
# I am getting the following array while trying to compile uipc_syscalls.c
# file.
# /vobs/atm/netbsd/sys/sys/syscallargs.h", line 30: zero or negative
# subscript
# This is because the code in syscallargs.h is defining an array of size
# 0.
# The code that is creating problem is
# #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?


				--*greywolf;
--
*BSD: The power to Connect