[webkit-gtk] building webkit-gtk using gcc 4.7.2 : error: 'isnan' was not declared in this scope
Richard PALO
richard.palo at baou.fr
Mon Dec 31 23:23:23 PST 2012
> CXX Source/JavaScriptCore/Programs_jsc_1-jsc.o
> In file included from Source/JavaScriptCore/jsc.cpp:32:0:
> Source/JavaScriptCore/JSCTypedArrayStubs.h: In member function 'void
> JSC::JSInt8Array::finishCreation(JSC::JSGlobalData&)':
> Source/JavaScriptCore/JSCTypedArrayStubs.h:194:1: error: invalid
> conversion from 'signed char*' to 'int8_t* {aka char*}' [-fpermissive]
> gmake[1]: *** [Source/JavaScriptCore/Programs_jsc_1-jsc.o] Error 1
> gmake[1]: Leaving directory
> `/tmp/pkgsrc/www/webkit-gtk/work/webkitgtk-1.10.1'
> gmake: *** [all] Error 2
> *** Error code 2
On (at least) solaris platforms, sys/isa_defs.h specifies
_CHAR_IS_SIGNED for both x86 and x86_64...
sys/int_types.h (included from stdint.h) has this:
/*
* Basic / Extended integer types
*
* The following defines the basic fixed-size integer types.
*
* Implementations are free to typedef them to Standard C integer types or
* extensions that they support. If an implementation does not support one
* of the particular integer data types below, then it should not
define the
* typedefs and macros corresponding to that data type. Note that int8_t
* is not defined in -Xs mode on ISAs for which the ABI specifies "char"
* as an unsigned entity because there is no way to define an eight bit
* signed integral.
*/
#if defined(_CHAR_IS_SIGNED)
typedef char int8_t;
#else
#if defined(__STDC__)
typedef signed char int8_t;
#endif
#endif
Therefore int8_t is *always* simply 'typedef char int8_t'.
It appears that webkit is presuming somewhere (or everywhere) that
int8_t is a signed char therefore the error...
More information about the webkit-gtk
mailing list