This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Question regarding bizarre ','


Daniel Jacobowitz wrote:
> 
> On Mon, Aug 05, 2002 at 06:21:35PM -0700, Joel Brobecker wrote:
> > This is where I show my lack of C-knowledge:
> >
> > in i386v4-nat.c, I read the following code:
> >
> >          /* Mapping between the general-purpose registers in `/proc'
> >             format and GDB's register array layout.  */
> >          static int regmap[] =
> >          {
> >            EAX, ECX, EDX, EBX,
> >            UESP, EBP, ESI, EDI,
> >            EIP, EFL, CS, SS,
> >            DS, ES, FS, GS,
> >          };
> >
> > I would have thought that the last ',' would cause a compilation error.
> > But this seems to compile fine. Any reason for keeping this last comma?
> 
> It makes it easier to add an element without having to touch any
> existing line, to make diffs clearer.  A trailing comma in an array
> initializer (or struct initializer maybe?) is ignored.

By most compilers, but some (possibly deviant ones) will give you
an error, or at least a warning.  I have definitely encountered this
when building GDB, and I think most array and enum initializers in
gdb do not have the trailing comma for this reason.

Michael


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]