[cvs] bogofilter/src lexer_v3.l,1.142,1.143

Stefan Bellon sbellon at sbellon.de
Tue Mar 23 00:21:17 CET 2004


Matthias Andree wrote:
> relson at users.sourceforge.net writes:

> > Update of /cvsroot/bogofilter/bogofilter/src
> > In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29233
> >
> > Modified Files:
> > 	lexer_v3.l 
> > Log Message:
> > Add cast to please picky compilers.

> I suggest to call these "proper" compilers. The ones that don't
> complain are sloppy, and are a contributing factor to integer
> overflow issues.

Thanks for this assistance, Matthias. Much appreciated. :-) Yes, I
really don't like GCC. I think it still misses some things even in
pedantic mode.

The most notable problem is the fact that char, unsigned char and
signed char are three *incompatible* types. There exist implicit
conversions between those, but they are not compatible. Concerning
pointer compatibility, it is defined that only pointers to compatible
types are compatible. So, you cannot assign a char* to an unsigned
char* to a signed char* (in no combination). GCC allows this and this
is sloppy.

I can back up this claim with references to the C standard if somebody
thinks I'm wrong. ;-)

-- 
Stefan Bellon




More information about the bogofilter-dev mailing list