Subject: Re: CVS commit: src
To: Dave Sainty <dave@dtsp.co.nz>
From: Klaus Klein <kleink@ira.uka.de>
List: source-changes
Date: 12/17/1998 22:31:12
Dave Sainty <dave@dtsp.co.nz> writes:

> Klaus Klein writes:
> 
> > Module Name:	src
> > Committed By:	kleink
> > Date:		Wed Dec 16 11:11:02 UTC 1998
> > 
> > Modified Files:
> > 	src/sys/arch/i386/include: endian.h
> > 	src/sys/arch/pc532/include: endian.h
> > 	src/sys/arch/vax/include: endian.h
> > Log Message:
> > Support for compound statements enclosed in parenthes to appear as
> > expressions is a GNU C extension; mark as such them with
> > __extension__ to suppress portability warnings.  Addresses kern/3562
> > and misc/6185, as suggested by Dave Sainty <dave@dtsp.co.nz>.
> 
> When I suggested that I didn't realise quite how new that gcc feature
> is, but it's actually missing as recently as gcc 2.7.x.

Before I committed this I had a look at the old in-tree GCC based on
2.7.2.2, which did support __extension__.

> Or alternatively, #define away __extension__ in
> /usr/include/sys/cdefs.h.  Actually, I see this is already done for
> __attribute__ in cdefs.h, perhaps this is the correct place to do it?

Yes, that's actually what I intend to do after having checked out
which version of GCC it was supported in first.  However, the GCC
version the compound statement expression extension was first
supported in is of interest, too.