/[freetype]/freetype2/ChangeLog
ViewVC logotype

Diff of /freetype2/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1046 by freetype, Mon May 23 13:04:52 2005 UTC revision 1.1047 by wl, Mon May 23 21:33:02 2005 UTC
# Line 1  Line 1 
1    2005-05-23  Werner Lemberg  <wl@gnu.org>
2    
3            * builds/amiga/makefile.os4 (WARNINGS), builds/compiler/gcc-dev.mk
4            (CFLAGS), builds/compiler/gcc.mk (CFLAGS): Remove
5            -fno-strict-aliasing.
6    
7    2005-05-23  Behdad Esfahbod  <behdad@cs.toronto.edu>
8    
9            Say you have `(Foo*)x' and want to assign, pass, or return it as
10            `(Bar*)'.  If you simply say `x' or `(Bar*)x', then the C compiler
11            would warn you that type casting incompatible pointer types breaks
12            strict-aliasing.  The solution is to cast to `(void*)' instead which
13            is the generic pointer type, so the compiler knows that it should
14            make no strict-aliasing assumption on `x'.  But the problem with
15            `(void*)x' is that seems like in C++, unlike C, `void*' is not a
16            generic pointer type and assigning `void*' to `Bar*' without a cast
17            causes an error.  The solution is to cast to `Bar*' too, with
18            `(Bar*)(void*)x' as the result -- this is what the patch does.
19    
20            * include/freetype/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP),
21            include/freetype/cache/ftcmru.h (FTC_MRULIST_LOOKUP_CMP): Remove
22            cast on lvalue, use a temporary pointer instead.
23            Cast temporarily to (void*) to not break strict aliasing.
24    
25            * include/freetype/internal/ftmemory.h (FT_MEM_ALLOC,
26            FT_MEM_REALLOC, FT_MEM_QALLOC, FT_MEM_QREALLOC, FT_MEM_FREE),
27            src/base/ftglyph.c (FT_Glyph_To_Bitmap): Cast temporarily to (void*)
28            to not break strict aliasing.
29    
30            * src/base/ftinit.c (FT_USE_MODULE): Fix wrong type information.
31    
32            * builds/unix/configure.ac (XX_CFLAGS): Remove -fno-strict-aliasing.
33    
34            * src/sfnt/rules.mk (SFNT_DRV_SRC): Don't include ttsbit0.c --
35            it is currently loaded from ttsbit.c.
36    
37  2005-05-23  David Turner  <dturner@freetype.org>  2005-05-23  David Turner  <dturner@freetype.org>
38    
39      * include/freetype/cache/ftcache.h, src/cache/ftccache.c,          Fix Savannah bug #12213 (incorrect behaviour of the cache sub-system
40      src/cache/ftcsbits.c: fixing bug #12213 (incorrect behaviour          in low-memory conditions).
41      of the cache sub-system in low-memory conditions).  
42            * include/freetype/cache/ftccache.h (FTC_CACHE_TRYLOOP,
43            FTC_CACHE_TRYLOOP_END): New macros.
44    
45            * src/cache/ftccache.c (FTC_Cache_NewNode), src/cache/ftcsbits.c
46            (ftc_snode_compare): Use FT_CACHE_TRYLOOP and FTC_CACE_TRYLOOP_END.
47    
48  2005-05-23  Werner Lemberg  <wl@gnu.org>  2005-05-23  Werner Lemberg  <wl@gnu.org>
49    

Legend:
Removed from v.1.1046  
changed lines
  Added in v.1.1047

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26