Commit 1a5d561dce3731a5691a27a8b0a04c664bca7add

Werner Lemberg 2008-11-29T22:50:24

* src/autofit/afcjk.c, src/base/ftoutln.c, src/base/ftrfork.c, src/bdf/bdfdrivr.c, src/gxvalid/gxvmorx.c, src/otvalid/otvmath.c, src/pcf/pcfdrivr.c, src/psnames/pstables.h, src/smooth/ftgrays.c, src/tools/glnames.py, src/truetype/ttinterp.c, src/type1/t1load.c, src/type42/t42objs.c, src/winfonts/winfnt.c: Fix compiler warnings (Atari PureC).

diff --git a/ChangeLog b/ChangeLog
index 0397d11..094cce8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2008-11-29  Werner Lemberg  <wl@gnu.org>
+
+	* src/autofit/afcjk.c, src/base/ftoutln.c, src/base/ftrfork.c,
+	src/bdf/bdfdrivr.c, src/gxvalid/gxvmorx.c, src/otvalid/otvmath.c,
+	src/pcf/pcfdrivr.c, src/psnames/pstables.h, src/smooth/ftgrays.c,
+	src/tools/glnames.py, src/truetype/ttinterp.c, src/type1/t1load.c,
+	src/type42/t42objs.c, src/winfonts/winfnt.c: Fix compiler warnings
+	(Atari PureC).
+
 2008-11-29  James Cloos  <cloos@jhcloos.com>
 
 	* src/type/t1load.c (mm_axis_unmap): Revert previous patch and fix
diff --git a/src/autofit/afcjk.c b/src/autofit/afcjk.c
index 7e9438b..7f77f7b 100644
--- a/src/autofit/afcjk.c
+++ b/src/autofit/afcjk.c
@@ -4,7 +4,7 @@
 /*                                                                         */
 /*    Auto-fitter hinting routines for CJK script (body).                  */
 /*                                                                         */
-/*  Copyright 2006, 2007 by                                                */
+/*  Copyright 2006, 2007, 2008 by                                          */
 /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
 /*                                                                         */
 /*  This file is part of the FreeType project, and may only be used,       */
@@ -1436,29 +1436,29 @@
   static const AF_Script_UniRangeRec  af_cjk_uniranges[] =
   {
 #if 0
-    { 0x0100,  0xFFFF },  /* why this? */
+    {  0x0100UL,  0xFFFFUL },  /* why this? */
 #endif
-    { 0x2E80,  0x2EFF },  /* CJK Radicals Supplement */
-    { 0x2F00,  0x2FDF },  /* Kangxi Radicals */
-    { 0x3000,  0x303F },  /* CJK Symbols and Punctuation */
-    { 0x3040,  0x309F },  /* Hiragana */
-    { 0x30A0,  0x30FF },  /* Katakana */
-    { 0x3100,  0x312F },  /* Bopomofo */
-    { 0x3130,  0x318F },  /* Hangul Compatibility Jamo */
-    { 0x31A0,  0x31BF },  /* Bopomofo Extended */
-    { 0x31C0,  0x31EF },  /* CJK Strokes */
-    { 0x31F0,  0x31FF },  /* Katakana Phonetic Extensions */
-    { 0x3200,  0x32FF },  /* Enclosed CJK Letters and Months */
-    { 0x3300,  0x33FF },  /* CJK Compatibility */
-    { 0x3400,  0x4DBF },  /* CJK Unified Ideographs Extension A */
-    { 0x4DC0,  0x4DFF },  /* Yijing Hexagram Symbols */
-    { 0x4E00,  0x9FFF },  /* CJK Unified Ideographs */
-    { 0xF900,  0xFAFF },  /* CJK Compatibility Ideographs */
-    { 0xFE30,  0xFE4F },  /* CJK Compatibility Forms */
-    { 0xFF00,  0xFFEF },  /* Halfwidth and Fullwidth Forms */
-    { 0x20000, 0x2A6DF }, /* CJK Unified Ideographs Extension B */
-    { 0x2F800, 0x2FA1F }, /* CJK Compatibility Ideographs Supplement */
-    { 0,       0 }
+    {  0x2E80UL,  0x2EFFUL },  /* CJK Radicals Supplement                 */
+    {  0x2F00UL,  0x2FDFUL },  /* Kangxi Radicals                         */
+    {  0x3000UL,  0x303FUL },  /* CJK Symbols and Punctuation             */
+    {  0x3040UL,  0x309FUL },  /* Hiragana                                */
+    {  0x30A0UL,  0x30FFUL },  /* Katakana                                */
+    {  0x3100UL,  0x312FUL },  /* Bopomofo                                */
+    {  0x3130UL,  0x318FUL },  /* Hangul Compatibility Jamo               */
+    {  0x31A0UL,  0x31BFUL },  /* Bopomofo Extended                       */
+    {  0x31C0UL,  0x31EFUL },  /* CJK Strokes                             */
+    {  0x31F0UL,  0x31FFUL },  /* Katakana Phonetic Extensions            */
+    {  0x3200UL,  0x32FFUL },  /* Enclosed CJK Letters and Months         */
+    {  0x3300UL,  0x33FFUL },  /* CJK Compatibility                       */
+    {  0x3400UL,  0x4DBFUL },  /* CJK Unified Ideographs Extension A      */
+    {  0x4DC0UL,  0x4DFFUL },  /* Yijing Hexagram Symbols                 */
+    {  0x4E00UL,  0x9FFFUL },  /* CJK Unified Ideographs                  */
+    {  0xF900UL,  0xFAFFUL },  /* CJK Compatibility Ideographs            */
+    {  0xFE30UL,  0xFE4FUL },  /* CJK Compatibility Forms                 */
+    {  0xFF00UL,  0xFFEFUL },  /* Halfwidth and Fullwidth Forms           */
+    { 0x20000UL, 0x2A6DFUL },  /* CJK Unified Ideographs Extension B      */
+    { 0x2F800UL, 0x2FA1FUL },  /* CJK Compatibility Ideographs Supplement */
+    {       0UL,       0UL }
   };
 
 
diff --git a/src/base/ftoutln.c b/src/base/ftoutln.c
index 48be18c..49ef82e 100644
--- a/src/base/ftoutln.c
+++ b/src/base/ftoutln.c
@@ -1045,7 +1045,7 @@
       }
     }
 
-    if ( xmin == 32768 )
+    if ( xmin == 32768L )
       return FT_ORIENTATION_TRUETYPE;
 
     ray_y[0] = ( xmin_ymin * 3 + xmin_ymax     ) >> 2;
diff --git a/src/base/ftrfork.c b/src/base/ftrfork.c
index 5a835ee..719570d 100644
--- a/src/base/ftrfork.c
+++ b/src/base/ftrfork.c
@@ -4,7 +4,7 @@
 /*                                                                         */
 /*    Embedded resource forks accessor (body).                             */
 /*                                                                         */
-/*  Copyright 2004, 2005, 2006, 2007 by                                    */
+/*  Copyright 2004, 2005, 2006, 2007, 2008 by                              */
 /*  Masatake YAMATO and Redhat K.K.                                        */
 /*                                                                         */
 /*  FT_Raccess_Get_HeaderInfo() and raccess_guess_darwin_hfsplus() are     */
@@ -399,7 +399,10 @@
                               char      **result_file_name,
                               FT_Long    *result_offset )
   {
-    FT_Int32  magic = ( 0x00 << 24 | 0x05 << 16 | 0x16 << 8 | 0x07 );
+    FT_Int32  magic = ( 0x00 << 24 ) |
+                      ( 0x05 << 16 ) |
+                      ( 0x16 <<  8 ) |
+                        0x07;
 
 
     *result_file_name = NULL;
@@ -418,7 +421,10 @@
                               char      **result_file_name,
                               FT_Long    *result_offset )
   {
-    FT_Int32  magic = (0x00 << 24 | 0x05 << 16 | 0x16 << 8 | 0x00);
+    FT_Int32  magic = ( 0x00 << 24 ) |
+                      ( 0x05 << 16 ) |
+                      ( 0x16 <<  8 ) |
+                        0x00;
 
 
     *result_file_name = NULL;
diff --git a/src/bdf/bdfdrivr.c b/src/bdf/bdfdrivr.c
index 0786ab4..0b736b5 100644
--- a/src/bdf/bdfdrivr.c
+++ b/src/bdf/bdfdrivr.c
@@ -2,7 +2,7 @@
 
     FreeType font driver for bdf files
 
-    Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 by
+    Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 by
     Francesco Zappa Nardelli
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -615,7 +615,7 @@ THE SOFTWARE.
     switch ( req->type )
     {
     case FT_SIZE_REQUEST_TYPE_NOMINAL:
-      if ( height == ( bsize->y_ppem + 32 ) >> 6 )
+      if ( height == ( ( bsize->y_ppem + 32 ) >> 6 ) )
         error = BDF_Err_Ok;
       break;
 
diff --git a/src/gxvalid/gxvmorx.c b/src/gxvalid/gxvmorx.c
index 849d5e9..d217940 100644
--- a/src/gxvalid/gxvmorx.c
+++ b/src/gxvalid/gxvmorx.c
@@ -4,7 +4,8 @@
 /*                                                                         */
 /*    TrueTypeGX/AAT morx table validation (body).                         */
 /*                                                                         */
-/*  Copyright 2005 by suzuki toshiya, Masatake YAMATO, Red Hat K.K.,       */
+/*  Copyright 2005, 2008 by                                                */
+/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
 /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
 /*                                                                         */
 /*  This file is part of the FreeType project, and may only be used,       */
@@ -129,7 +130,7 @@
     gxv_mort_featurearray_validate( p, limit, nFeatureFlags, valid );
     p += valid->subtable_length;
 
-    if ( nSubtables >= 0x10000 )
+    if ( nSubtables >= 0x10000L )
       FT_INVALID_DATA;
 
     gxv_morx_subtables_validate( p, table + chainLength,
diff --git a/src/otvalid/otvmath.c b/src/otvalid/otvmath.c
index b777d6a..50ed10c 100644
--- a/src/otvalid/otvmath.c
+++ b/src/otvalid/otvmath.c
@@ -4,7 +4,7 @@
 /*                                                                         */
 /*    OpenType MATH table validation (body).                               */
 /*                                                                         */
-/*  Copyright 2007 by                                                      */
+/*  Copyright 2007, 2008 by                                                */
 /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
 /*                                                                         */
 /*  Written by George Williams.                                            */
@@ -93,6 +93,8 @@
     OTV_OPTIONAL_TABLE( Coverage );
     OTV_OPTIONAL_TABLE( DeviceTableOffset );
 
+    FT_UNUSED( isItalic );  /* only used if tracing is active */
+
 
     OTV_NAME_ENTER( isItalic ? "MathItalicsCorrectionInfo"
                              : "MathTopAccentAttachment" );
diff --git a/src/pcf/pcfdrivr.c b/src/pcf/pcfdrivr.c
index a0c58ef..0b45412 100644
--- a/src/pcf/pcfdrivr.c
+++ b/src/pcf/pcfdrivr.c
@@ -413,7 +413,7 @@ THE SOFTWARE.
     switch ( req->type )
     {
     case FT_SIZE_REQUEST_TYPE_NOMINAL:
-      if ( height == ( bsize->y_ppem + 32 ) >> 6 )
+      if ( height == ( ( bsize->y_ppem + 32 ) >> 6 ) )
         error = PCF_Err_Ok;
       break;
 
diff --git a/src/psnames/pstables.h b/src/psnames/pstables.h
index ed05c4c..1521e9c 100644
--- a/src/psnames/pstables.h
+++ b/src/psnames/pstables.h
@@ -564,7 +564,7 @@
 
 #ifdef FT_CONFIG_OPTION_ADOBE_GLYPH_LIST
 
-  static const unsigned char  ft_adobe_glyph_list[54791] =
+  static const unsigned char  ft_adobe_glyph_list[54791L] =
   {
       0, 52,  0,106,  2,167,  3, 63,  4,220,  6,125,  9,143, 10, 23,
      11,137, 12,199, 14,246, 15, 87, 16,233, 17,219, 18,104, 19, 88,
diff --git a/src/smooth/ftgrays.c b/src/smooth/ftgrays.c
index c44ba01..206a1ea 100644
--- a/src/smooth/ftgrays.c
+++ b/src/smooth/ftgrays.c
@@ -1240,7 +1240,7 @@
     x += (TCoord)ras.min_ex;
 
     /* FT_Span.x is a 16-bit short, so limit our coordinates appropriately */
-    if ( x >= 32768 )
+    if ( x >= 32767 )
       x = 32767;
 
     if ( coverage )
diff --git a/src/tools/glnames.py b/src/tools/glnames.py
index e8a3a59..55573b2 100644
--- a/src/tools/glnames.py
+++ b/src/tools/glnames.py
@@ -5011,7 +5011,7 @@ def dump_array( the_array, write, array_name ):
   """dumps a given encoding"""
 
   write( "  static const unsigned char  " + array_name +
-         "[" + repr( len( the_array ) ) + "] =\n" )
+         "[" + repr( len( the_array ) ) + "L] =\n" )
   write( "  {\n" )
 
   line  = ""
diff --git a/src/truetype/ttinterp.c b/src/truetype/ttinterp.c
index 74c8f17..0b6a744 100644
--- a/src/truetype/ttinterp.c
+++ b/src/truetype/ttinterp.c
@@ -6388,7 +6388,7 @@
           {
             scale_valid = 1;
             scale       = TT_MULDIV( org2 + delta2 - ( org1 + delta1 ),
-                                     0x10000, orus2 - orus1 );
+                                     0x10000L, orus2 - orus1 );
           }
 
           x = ( org1 + delta1 ) +
diff --git a/src/type1/t1load.c b/src/type1/t1load.c
index ccd17f3..3afbeb8 100644
--- a/src/type1/t1load.c
+++ b/src/type1/t1load.c
@@ -336,8 +336,8 @@
       mmvar->axis[i].def     = ( mmvar->axis[i].minimum +
                                    mmvar->axis[i].maximum ) / 2;
                             /* Does not apply.  But this value is in range */
-      mmvar->axis[i].strid   = 0xFFFFFFFFUL;   /* Does not apply */
-      mmvar->axis[i].tag     = 0xFFFFFFFFUL;   /* Does not apply */
+      mmvar->axis[i].strid   = (FT_UInt)-1;    /* Does not apply */
+      mmvar->axis[i].tag     = (FT_ULong)-1;   /* Does not apply */
 
       if ( ft_strcmp( mmvar->axis[i].name, "Weight" ) == 0 )
         mmvar->axis[i].tag = FT_MAKE_TAG( 'w', 'g', 'h', 't' );
@@ -347,7 +347,7 @@
         mmvar->axis[i].tag = FT_MAKE_TAG( 'o', 'p', 's', 'z' );
     }
 
-    if ( blend->num_designs == 1U << blend->num_axis )
+    if ( blend->num_designs == ( 1U << blend->num_axis ) )
     {
       mm_weights_unmap( blend->default_weight_vector,
                         axiscoords,
diff --git a/src/type42/t42objs.c b/src/type42/t42objs.c
index 76dc519..ad895aa 100644
--- a/src/type42/t42objs.c
+++ b/src/type42/t42objs.c
@@ -519,7 +519,7 @@
 
     FT_Activate_Size( size->ttsize );
 
-    error = FT_Select_Size( face->ttf_face, strike_index );
+    error = FT_Select_Size( face->ttf_face, (FT_Int)strike_index );
     if ( !error )
       ( (FT_Size)size )->metrics = face->ttf_face->size->metrics;
 
diff --git a/src/winfonts/winfnt.c b/src/winfonts/winfnt.c
index 65055ac..e27a324 100644
--- a/src/winfonts/winfnt.c
+++ b/src/winfonts/winfnt.c
@@ -612,8 +612,9 @@
 
     char_code -= cmap->first;
     if ( char_code < cmap->count )
-      gindex = char_code + 1; /* we artificially increase the glyph index; */
-                              /* FNT_Load_Glyph reverts to the right one   */
+      /* we artificially increase the glyph index; */
+      /* FNT_Load_Glyph reverts to the right one   */
+      gindex = (FT_UInt)( char_code + 1 );
     return gindex;
   }
 
@@ -638,7 +639,7 @@
       if ( char_code < cmap->count )
       {
         result = cmap->first + char_code;
-        gindex = char_code + 1;
+        gindex = (FT_UInt)( char_code + 1 );
       }
     }
 
@@ -782,7 +783,7 @@
          * => nominal_point_size contains incorrect value;
          *    use pixel_height as the nominal height
          */
-        if ( bsize->y_ppem > font->header.pixel_height << 6 )
+        if ( bsize->y_ppem > ( font->header.pixel_height << 6 ) )
         {
           FT_TRACE2(( "use pixel_height as the nominal height\n" ));
 
@@ -911,7 +912,7 @@
     switch ( req->type )
     {
     case FT_SIZE_REQUEST_TYPE_NOMINAL:
-      if ( height == ( bsize->y_ppem + 32 ) >> 6 )
+      if ( height == ( ( bsize->y_ppem + 32 ) >> 6 ) )
         error = FNT_Err_Ok;
       break;