Lowell Gilbert <[EMAIL PROTECTED]> wrote:
>
>C-99 requires a fully specified type before the unspecified array (and
>requires said array to be the last element in the structure). So this
>example is *not* valid in C99, but the following would be:
>
>struct foo {
>int bar;
>char ar
Harti Brandt <[EMAIL PROTECTED]> writes:
> This should be
>
> struct foo {
> char array[];
> };
>
> according to C-99, on which gcc2 barfs. Don't know, whether gcc3 can
> handle this.
C-99 requires a fully specified type before the unspecified array (and
requires said array to be the las
Erik Trulsson <[EMAIL PROTECTED]> writes:
> On Mon, Mar 04, 2002 at 09:35:29AM -0700, M. Warner Losh wrote:
> > In message: <[EMAIL PROTECTED]>
> > Erik Trulsson <[EMAIL PROTECTED]> writes:
> > : I think it is still there (and my draft copy says the same thing).
> > : I was thinking
>>> Zero length arrays
>>> are undefined.
>>
>> Well, yes, but the quesiton is *why* they are undefined.
>> They are undefined only because ANSI says that they are.
>> But why did they say so?
>
> They didn't really. They just didn't say that zero-length arrays are
> allowed. (This might be cha
On Mon, Mar 04, 2002 at 09:35:29AM -0700, M. Warner Losh wrote:
> In message: <[EMAIL PROTECTED]>
> Erik Trulsson <[EMAIL PROTECTED]> writes:
> : I think it is still there (and my draft copy says the same thing).
> : I was thinking about the original C89 standard which does not allow
On Mon, 4 Mar 2002, M. Warner Losh wrote:
MWL>In message: <[EMAIL PROTECTED]>
MWL>Erik Trulsson <[EMAIL PROTECTED]> writes:
MWL>: I think it is still there (and my draft copy says the same thing).
MWL>: I was thinking about the original C89 standard which does not allow it
MWL>: (and
In message: <[EMAIL PROTECTED]>
Erik Trulsson <[EMAIL PROTECTED]> writes:
: I think it is still there (and my draft copy says the same thing).
: I was thinking about the original C89 standard which does not allow it
: (and does not allow incomplete array types in structs). Guess I sh
On Mon, Mar 04, 2002 at 10:29:18AM +0100, Harti Brandt wrote:
> On Sun, 3 Mar 2002, Erik Trulsson wrote:
>
> ET>On Sun, Mar 03, 2002 at 10:27:17AM -0700, Ian wrote:
> ET>> >
> ET>> > In :
> ET>> >
> ET>> > /*
> ET>> > * pargs, used to hold a copy of the command line, if it had a sane
> ET>> > * l
On Sun, 3 Mar 2002, Erik Trulsson wrote:
ET>On Sun, Mar 03, 2002 at 10:27:17AM -0700, Ian wrote:
ET>> >
ET>> > In :
ET>> >
ET>> > /*
ET>> > * pargs, used to hold a copy of the command line, if it had a sane
ET>> > * length
ET>> > */
ET>> > struct pargs {
ET>> > u_int ar_ref; /* Referen
Thanks for all the very interesting followups, folks. I learned something
today!
I really must start reading this list more often. :-)
--
Conrad Sabatier <[EMAIL PROTECTED]>
Bennett's Laws of Horticulture:
(1) Houses are for people to live in.
(2) Gardens are for plants to li
Terry Lambert wrote:
| Order of structure elements is undefined. Zero length arrays
| are undefined. Also, packing is undefined.
Close, but no cigar. The /order/ is defined in C89 (Section
6.5.2.1) with the following words:
Within a structure object, the non-bit-field members and the
"Brian T.Schellenberger" wrote:
> I can't even imagine how one *would* write a compiler where this would
> fail--does anybody know the putative risk that led ANSI to "ban" this (IMHO)
> perfectly-reasonable bahvior?
Order of structure elements is undefined. Zero length arrays
are undefined. Als
On Sunday 03 March 2002 01:00 pm, Erik Trulsson wrote:
> On Sun, Mar 03, 2002 at 10:27:17AM -0700, Ian wrote:
> > > In :
> > >
> > > /*
> > > * pargs, used to hold a copy of the command line, if it had a sane
> > > * length
> > > */
> > > struct pargs {
> > > u_int ar_ref; /* Reference
On Sunday 03 March 2002 10:19 am, Conrad Sabatier wrote:
> Am I just completely stupid, or do we have a few things that could use a
> little cleaning up in /usr/include as well as in the man page for kvm_*?
>
> System: FreeBSD 4.5-STABLE
>
> 2) If compiling with the -pedantic switch, one might see
On Sun, Mar 03, 2002 at 10:27:17AM -0700, Ian wrote:
> >
> > In :
> >
> > /*
> > * pargs, used to hold a copy of the command line, if it had a sane
> > * length
> > */
> > struct pargs {
> > u_int ar_ref; /* Reference count */
> > u_int ar_length; /* Length */
> > u_char ar_ar
>
> In :
>
> /*
> * pargs, used to hold a copy of the command line, if it had a sane
> * length
> */
> struct pargs {
> u_int ar_ref; /* Reference count */
> u_int ar_length; /* Length */
> u_char ar_args[0]; /* Arguments */
> };
>
> This does indeed seem to make little o
16 matches
Mail list logo