freetype-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ft-cvs] freetype2 ./ChangeLog builds/amiga/makefile.os4...


From: Werner LEMBERG
Subject: [ft-cvs] freetype2 ./ChangeLog builds/amiga/makefile.os4...
Date: Mon, 23 May 2005 17:33:02 -0400

CVSROOT:        /cvsroot/freetype
Module name:    freetype2
Branch:         
Changes by:     Werner LEMBERG <address@hidden> 05/05/23 21:33:02

Modified files:
        .              : ChangeLog 
        builds/amiga   : makefile.os4 
        builds/compiler: gcc-dev.mk gcc.mk 
        builds/unix    : configure.ac 
        include/freetype/cache: ftccache.h ftcmru.h 
        include/freetype/internal: ftmemory.h 
        src/base       : ftglyph.c ftinit.c 
        src/cache      : ftccache.c ftcsbits.c 
        src/sfnt       : rules.mk 

Log message:
        * builds/amiga/makefile.os4 (WARNINGS), builds/compiler/gcc-dev.mk
        (CFLAGS), builds/compiler/gcc.mk (CFLAGS): Remove
        -fno-strict-aliasing.
        
        Say you have `(Foo*)x' and want to assign, pass, or return it as
        `(Bar*)'.  If you simply say `x' or `(Bar*)x', then the C compiler
        would warn you that type casting incompatible pointer types breaks
        strict-aliasing.  The solution is to cast to `(void*)' instead which
        is the generic pointer type, so the compiler knows that it should
        make no strict-aliasing assumption on `x'.  But the problem with
        `(void*)x' is that seems like in C++, unlike C, `void*' is not a
        generic pointer type and assigning `void*' to `Bar*' without a cast
        causes an error.  The solution is to cast to `Bar*' too, with
        `(Bar*)(void*)x' as the result -- this is what the patch does.
        
        * include/freetype/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP),
        include/freetype/cache/ftcmru.h (FTC_MRULIST_LOOKUP_CMP): Remove
        cast on lvalue, use a temporary pointer instead.
        Cast temporarily to (void*) to not break strict aliasing.
        
        * include/freetype/internal/ftmemory.h (FT_MEM_ALLOC,
        FT_MEM_REALLOC, FT_MEM_QALLOC, FT_MEM_QREALLOC, FT_MEM_FREE),
        src/base/ftglyph.c (FT_Glyph_To_Bitmap): Cast temporarily to (void*)
        to not break strict aliasing.
        
        * src/base/ftinit.c (FT_USE_MODULE): Fix wrong type information.
        
        * builds/unix/configure.ac (XX_CFLAGS): Remove -fno-strict-aliasing.
        
        * src/sfnt/rules.mk (SFNT_DRV_SRC): Don't include ttsbit0.c --
        it is currently loaded from ttsbit.c.
        
        Other formatting.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/freetype/freetype2/ChangeLog.diff?tr1=1.1046&tr2=1.1047&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/freetype/freetype2/builds/amiga/makefile.os4.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/freetype/freetype2/builds/compiler/gcc-dev.mk.diff?tr1=1.11&tr2=1.12&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/freetype/freetype2/builds/compiler/gcc.mk.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/freetype/freetype2/builds/unix/configure.ac.diff?tr1=1.28&tr2=1.29&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/freetype/freetype2/include/freetype/cache/ftccache.h.diff?tr1=1.19&tr2=1.20&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/freetype/freetype2/include/freetype/cache/ftcmru.h.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/freetype/freetype2/include/freetype/internal/ftmemory.h.diff?tr1=1.38&tr2=1.39&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/freetype/freetype2/src/base/ftglyph.c.diff?tr1=1.67&tr2=1.68&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/freetype/freetype2/src/base/ftinit.c.diff?tr1=1.36&tr2=1.37&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/freetype/freetype2/src/cache/ftccache.c.diff?tr1=1.33&tr2=1.34&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/freetype/freetype2/src/cache/ftcsbits.c.diff?tr1=1.57&tr2=1.58&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/freetype/freetype2/src/sfnt/rules.mk.diff?tr1=1.23&tr2=1.24&r1=text&r2=text





reply via email to

[Prev in Thread] Current Thread [Next in Thread]