Ludovic Poitou wrote:
>
> Hi there,
>
> I've had trouble compiling gimp 1.1.17 on Solaris 8 with the native
> compiler (Workshop 5.0).
> Here's the list of problem :
>
> In plug-ins/common/ both gauss_iir.c and gauss_rle.c fail compiling
> because of G_MAXDOUBLE.
Hi,
G_MAXDOUBLE might be *slightly* too large as a blur value. I'll change it
to GIMP_MAX_IMAGE_SIZE (which is still quite large but will compile :-)
> In app, perspective_tool.c, rotate_tool.c, scale_tool.c and shear_tool.c
> have the same error :
>
> cc -DHAVE_CONFIG_H -I. -I. -I.. -I..
> -I../intl -I/opt/sfw/lib/glib/include
> -I/opt/sfw/include -I/usr2/gimp/include
> -DLIBDIR=\""/usr2/gimp/lib/gimp/1.1"\"
> -DLOCALEDIR=\""/usr2/gimp/lib/locale"\" -DREGEX_MALLOC
> -I/usr/sfw/include -R/usr/sfw/lib -c perspective_tool.c
> "perspective_tool.c", line 302: warning: argument #4 is incompatible
> with prototype:
> prototype: pointer to function() returning void :
> "./gimpprogress.h", line 36
> argument : pointer to void
> "perspective_tool.c", line 306: operands have incompatible types:
> pointer to function(int, int, int, pointer to void) returning
> void ":" pointer to void
> cc: acomp failed for perspective_tool.c
> *** Error code 2
> make: Fatal error: Command failed for target `perspective_tool.o'
>
> Line 306 :
> ret = transform_core_do (gimage, drawable, float_tiles,
> interpolation, matrix,
> progress ? progress_update_and_flush : NULL,
> progress);
>
> NULL is pointer to void and not a progress_func_t.
>
> The following change fix the compilation problem:
> ret = transform_core_do (gimage, drawable, float_tiles,
> interpolation, matrix,
> progress ? progress_update_and_flush :
> (progress_func_t)NULL,
> progress);
Thanks, will go to cvs with my next commit...
However, I always thought a NULL pointer was accepted without cast as
a value for all pointers _and_ function pointers??? Looks more like
a buggy compiler to me...
bye,
--Mitch