freetype-devel
[Top][All Lists]
Advanced

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

Re: [ft-devel] a couple of warnings from 2.5.4 with mingw/darwinx


From: Hin-Tak Leung
Subject: Re: [ft-devel] a couple of warnings from 2.5.4 with mingw/darwinx
Date: Mon, 19 Jan 2015 22:55:35 +0000

I have got to the bottom of the latter issue; I mentioned that I was 
cross-compiling,
for apple, right? It really needs the --enable-biarch-config switch:

without --enable-biarch-config:

checking size of long... 8
checking whether cpp computation of bit length in ftconfig.in works... no

with --enable-biarch-config:

checking size of long... 8
checking whether cpp computation of bit length in ftconfig.in works... broken 
but use it

I don't know where it gets the size of long from. The apple compiler
front end is quite interesting in that it drives the individual architectures
and put all three (or 4) outputs from 32-bit powerpc, 32-bit intel, 64-bit 
intel into 1 "object" files.
And the warnings come from the "under the hood" compile of the 32-bit outputs.

The 32-bit powerpc and 32-bit intel arch have size of long = 4. If I use
the individual single architecture front end, then it shows "4" and "yes" 
respectively.

I am wondering whether --enable-biarch-config should be better documented,
and/or made the default for Mac OS X? (though it probably make less sense now 
since
apple has moved to 64-bit intel somewhat exclusively lately)

Also, can it not use stdint.h and int64_t directly? "long" is rather vague :-).

--------------------------------------------
On Sat, 17/1/15, Werner LEMBERG <address@hidden> wrote:
 
 Hello
 Hin-Tak!
 
 
 >
 /usr/i686-w64-mingw32/sys-root/mingw/include/harfbuzz/hb-common.h:309:26:
 > warning: ISO C restricts enumerator values
 to range of 'int'
 >
 [-Wpedantic]
 >   
 _HB_SCRIPT_MAX_VALUE    = HB_TAG_MAX, /*< skip
 >*/
 >                     
      ^
 
 This is
 a known but harmless issue, and work-arounds seem to be
 very
 inelegant, IIRC.
 
 >
 /root/rpmbuild/BUILD/freetype-2.5.4/src/base/fttrigon.c:74:
 warning:
 > right shift count >= width
 of type
 
 This looks
 strange.  Here's the corresponding code line:
 
   val = (FT_Fixed)( (
 (FT_Int64)val * FT_TRIG_SCALE + 0x40000000UL ) >> 32
 );
 
 We explicitly convert to
 a 64bit entity (`FT_Int64'), and this should
 allow a shifting by 32 bits...  So the basic
 question is whether
 `FT_Int64' is
 *indeed* a 64bit type.
 
 
     Werner




reply via email to

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