RE: Guppi-0.40.3: conflicting types for `_SINFINITY'

"Gansser, Martin" <[email protected]> Tue, 9 Apr 2002 08:15:30 +0200
Newsgroups gmane.comp.gnome.apps.guppi
Message-ID <78224A6821F87A4D8023B133E5B1140B1EADFD@srvmxellwangen2.ratc-de.com>
This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_001_01C1DF8D.F305F040
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hi,

I have a problem with Guppi-0.40.3 on hp-ux 11.00
could you please take the following patches from Jon K Hellan to fix =
this.

for furhter questions

Regards Martin

> -----Original Message-----
> From: Jon K Hellan [mailto:[email protected]]
> Sent: Monday, April 08, 2002 8:56 PM
> To: Gansser, Martin
> Subject: Re: Guppi-0.40.3: conflicting types for `_SINFINITY'
>=20
>=20
> On Mon, Apr 08, 2002 at 11:50:37AM +0200, Gansser, Martin wrote:
> > another question with hp-ux 11.00.
> >=20
> >=20
> > the following error appears, if I compile Guppi on hp-ux 11.00:
>=20
> You should write to the guppi maintainer, Jon Trowbridge, about this,
> so that the changes get merged into the distribution. But here are
> some suggestions which you can forward:
> =20
> > gnan.c: In function `g_finite':
> > gnan.c:128: warning: implicit declaration of function `finite'
>=20
> Here's g_finite:
>=20
> gboolean
> g_finite (double x)
> {
>   /* FIXME: This needs to be made portable. */
>   return finite (x);
> }
>=20
> They could probably use the following snippet from gnumeric's
> src/mathfunc.h:=20
>=20
> #ifndef FINITE
> #  if defined(HAVE_FINITE)
> #    ifdef HAVE_IEEEFP_H
> #      include <ieeefp.h>
> #    endif
> #    define FINITE finite
> #  elif defined(HAVE_ISFINITE)
> #    define FINITE isfinite
> #  else
> #    error FINITE undefined
> #  endif
> #endif
>=20
> For this to work, the following has to be added to configure.in:
>=20
> dnl
> dnl On Solaris finite() needs ieeefp.h
> dnl
> AC_CHECK_HEADERS(ieeefp.h)
>=20
> dnl Check for some functions
> AC_CHECK_FUNCS(finite)
>=20
> dnl
> dnl On BSD, we seem to need -lm for finite
> dnl
> if test $ac_cv_func_finite =3D no; then
>   AC_CHECK_LIB(m, finite,
>         [AC_DEFINE(HAVE_FINITE)
>          LIBS=3D"$LIBS -lm"])
> fi
>=20
> dnl isfinite is a macro on HPUX
> AC_TRY_COMPILE([#include <math.h>], [int a =3D isfinite(0.0)],=20
> [AC_DEFINE(HAVE_ISFINITE)], [])
>=20
> And to acconfig.h:
>=20
> #undef HAVE_FINITE
> #undef HAVE_ISFINITE
> #undef HAVE_IEEEFP_H
>=20
> g_finite might then be changed to:
>=20
> gboolean
> g_finite (double x)
> {
>   return FINITE (x);
> }
>=20
> > guppi-config-model.c:40: warning: excess elements in array=20
> initializer
> > guppi-config-model.c:40: warning: (near initialization for
> > `guppi_config_model_signals')
> > guppi-defaults.c: In function `cant_find_default_font':
> > guppi-defaults.c:40: warning: implicit declaration of=20
> function `exit'
>=20
> Harmless.
>=20
> > guppi-string.c: In function `guppi_string_noise_count':
> > guppi-string.c:170: warning: subscript has type `char'
>=20
> This could be unportable code. But probably no big deal.
>=20
> > const.c:99: conflicting types for `_SINFINITY'
> > =
/opt/gcc/lib/gcc-lib/hppa2.0n-hp-hpux11.00/3.0.4/include/math.h:344:
> > previous declaration of `_SINFINITY'
>=20
> Try this patch to const.c:
>=20
> --- const.c.~1.3.~	Sat May  5 20:16:23 2001
> +++ const.c	Mon Apr  8 20:52:32 2002
> @@ -93,10 +93,12 @@
>  double LOGSQ2 =3D 3.46573590279972654709E-1;	/* log(2)/2 */
>  double THPIO4 =3D 2.35619449019234492885;	/* 3*pi/4 */
>  double TWOOPI =3D 6.36619772367581343075535E-1;	/* 2/pi */
> -#ifdef INFINITIES
> +#ifndef INFINITY
> +#  ifdef INFINITIES
>  double INFINITY =3D 1.0 / 0.0;	/* 99e999; */
> -#else
> +#  else
>  double INFINITY =3D 1.79769313486231570815E308;	/*=20
> 2**1024*(1-MACHEP) */
> +#  endif
>  #endif
> =20
>  #ifdef MINUSZERO
>=20
> Good luck
>=20
> Jon K=E5re
>=20

------_=_NextPart_001_01C1DF8D.F305F040
Content-Type: text/html;
	charset="iso-8859-1"

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 5.5.2653.12">
<TITLE>RE: Guppi-0.40.3:  conflicting types for `_SINFINITY'</TITLE>
</HEAD>
<BODY>

<P><FONT SIZE=2>Hi,</FONT>
</P>

<P><FONT SIZE=2>I have a problem with Guppi-0.40.3 on hp-ux 11.00</FONT>
<BR><FONT SIZE=2>could you please take the following patches from Jon K Hellan to fix this.</FONT>
</P>

<P><FONT SIZE=2>for furhter questions</FONT>
</P>

<P><FONT SIZE=2>Regards Martin</FONT>
</P>

<P><FONT SIZE=2>&gt; -----Original Message-----</FONT>
<BR><FONT SIZE=2>&gt; From: Jon K Hellan [<A HREF="mailto:[email protected]">mailto:[email protected]</A>]</FONT>
<BR><FONT SIZE=2>&gt; Sent: Monday, April 08, 2002 8:56 PM</FONT>
<BR><FONT SIZE=2>&gt; To: Gansser, Martin</FONT>
<BR><FONT SIZE=2>&gt; Subject: Re: Guppi-0.40.3: conflicting types for `_SINFINITY'</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; On Mon, Apr 08, 2002 at 11:50:37AM +0200, Gansser, Martin wrote:</FONT>
<BR><FONT SIZE=2>&gt; &gt; another question with hp-ux 11.00.</FONT>
<BR><FONT SIZE=2>&gt; &gt; </FONT>
<BR><FONT SIZE=2>&gt; &gt; </FONT>
<BR><FONT SIZE=2>&gt; &gt; the following error appears, if I compile Guppi on hp-ux 11.00:</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; You should write to the guppi maintainer, Jon Trowbridge, about this,</FONT>
<BR><FONT SIZE=2>&gt; so that the changes get merged into the distribution. But here are</FONT>
<BR><FONT SIZE=2>&gt; some suggestions which you can forward:</FONT>
<BR><FONT SIZE=2>&gt;&nbsp; </FONT>
<BR><FONT SIZE=2>&gt; &gt; gnan.c: In function `g_finite':</FONT>
<BR><FONT SIZE=2>&gt; &gt; gnan.c:128: warning: implicit declaration of function `finite'</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; Here's g_finite:</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; gboolean</FONT>
<BR><FONT SIZE=2>&gt; g_finite (double x)</FONT>
<BR><FONT SIZE=2>&gt; {</FONT>
<BR><FONT SIZE=2>&gt;&nbsp;&nbsp; /* FIXME: This needs to be made portable. */</FONT>
<BR><FONT SIZE=2>&gt;&nbsp;&nbsp; return finite (x);</FONT>
<BR><FONT SIZE=2>&gt; }</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; They could probably use the following snippet from gnumeric's</FONT>
<BR><FONT SIZE=2>&gt; src/mathfunc.h: </FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; #ifndef FINITE</FONT>
<BR><FONT SIZE=2>&gt; #&nbsp; if defined(HAVE_FINITE)</FONT>
<BR><FONT SIZE=2>&gt; #&nbsp;&nbsp;&nbsp; ifdef HAVE_IEEEFP_H</FONT>
<BR><FONT SIZE=2>&gt; #&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; include &lt;ieeefp.h&gt;</FONT>
<BR><FONT SIZE=2>&gt; #&nbsp;&nbsp;&nbsp; endif</FONT>
<BR><FONT SIZE=2>&gt; #&nbsp;&nbsp;&nbsp; define FINITE finite</FONT>
<BR><FONT SIZE=2>&gt; #&nbsp; elif defined(HAVE_ISFINITE)</FONT>
<BR><FONT SIZE=2>&gt; #&nbsp;&nbsp;&nbsp; define FINITE isfinite</FONT>
<BR><FONT SIZE=2>&gt; #&nbsp; else</FONT>
<BR><FONT SIZE=2>&gt; #&nbsp;&nbsp;&nbsp; error FINITE undefined</FONT>
<BR><FONT SIZE=2>&gt; #&nbsp; endif</FONT>
<BR><FONT SIZE=2>&gt; #endif</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; For this to work, the following has to be added to configure.in:</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; dnl</FONT>
<BR><FONT SIZE=2>&gt; dnl On Solaris finite() needs ieeefp.h</FONT>
<BR><FONT SIZE=2>&gt; dnl</FONT>
<BR><FONT SIZE=2>&gt; AC_CHECK_HEADERS(ieeefp.h)</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; dnl Check for some functions</FONT>
<BR><FONT SIZE=2>&gt; AC_CHECK_FUNCS(finite)</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; dnl</FONT>
<BR><FONT SIZE=2>&gt; dnl On BSD, we seem to need -lm for finite</FONT>
<BR><FONT SIZE=2>&gt; dnl</FONT>
<BR><FONT SIZE=2>&gt; if test $ac_cv_func_finite = no; then</FONT>
<BR><FONT SIZE=2>&gt;&nbsp;&nbsp; AC_CHECK_LIB(m, finite,</FONT>
<BR><FONT SIZE=2>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [AC_DEFINE(HAVE_FINITE)</FONT>
<BR><FONT SIZE=2>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LIBS=&quot;$LIBS -lm&quot;])</FONT>
<BR><FONT SIZE=2>&gt; fi</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; dnl isfinite is a macro on HPUX</FONT>
<BR><FONT SIZE=2>&gt; AC_TRY_COMPILE([#include &lt;math.h&gt;], [int a = isfinite(0.0)], </FONT>
<BR><FONT SIZE=2>&gt; [AC_DEFINE(HAVE_ISFINITE)], [])</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; And to acconfig.h:</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; #undef HAVE_FINITE</FONT>
<BR><FONT SIZE=2>&gt; #undef HAVE_ISFINITE</FONT>
<BR><FONT SIZE=2>&gt; #undef HAVE_IEEEFP_H</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; g_finite might then be changed to:</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; gboolean</FONT>
<BR><FONT SIZE=2>&gt; g_finite (double x)</FONT>
<BR><FONT SIZE=2>&gt; {</FONT>
<BR><FONT SIZE=2>&gt;&nbsp;&nbsp; return FINITE (x);</FONT>
<BR><FONT SIZE=2>&gt; }</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; &gt; guppi-config-model.c:40: warning: excess elements in array </FONT>
<BR><FONT SIZE=2>&gt; initializer</FONT>
<BR><FONT SIZE=2>&gt; &gt; guppi-config-model.c:40: warning: (near initialization for</FONT>
<BR><FONT SIZE=2>&gt; &gt; `guppi_config_model_signals')</FONT>
<BR><FONT SIZE=2>&gt; &gt; guppi-defaults.c: In function `cant_find_default_font':</FONT>
<BR><FONT SIZE=2>&gt; &gt; guppi-defaults.c:40: warning: implicit declaration of </FONT>
<BR><FONT SIZE=2>&gt; function `exit'</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; Harmless.</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; &gt; guppi-string.c: In function `guppi_string_noise_count':</FONT>
<BR><FONT SIZE=2>&gt; &gt; guppi-string.c:170: warning: subscript has type `char'</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; This could be unportable code. But probably no big deal.</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; &gt; const.c:99: conflicting types for `_SINFINITY'</FONT>
<BR><FONT SIZE=2>&gt; &gt; /opt/gcc/lib/gcc-lib/hppa2.0n-hp-hpux11.00/3.0.4/include/math.h:344:</FONT>
<BR><FONT SIZE=2>&gt; &gt; previous declaration of `_SINFINITY'</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; Try this patch to const.c:</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; --- const.c.~1.3.~&nbsp;&nbsp;&nbsp; Sat May&nbsp; 5 20:16:23 2001</FONT>
<BR><FONT SIZE=2>&gt; +++ const.c&nbsp;&nbsp; Mon Apr&nbsp; 8 20:52:32 2002</FONT>
<BR><FONT SIZE=2>&gt; @@ -93,10 +93,12 @@</FONT>
<BR><FONT SIZE=2>&gt;&nbsp; double LOGSQ2 = 3.46573590279972654709E-1;&nbsp;&nbsp; /* log(2)/2 */</FONT>
<BR><FONT SIZE=2>&gt;&nbsp; double THPIO4 = 2.35619449019234492885;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* 3*pi/4 */</FONT>
<BR><FONT SIZE=2>&gt;&nbsp; double TWOOPI = 6.36619772367581343075535E-1;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* 2/pi */</FONT>
<BR><FONT SIZE=2>&gt; -#ifdef INFINITIES</FONT>
<BR><FONT SIZE=2>&gt; +#ifndef INFINITY</FONT>
<BR><FONT SIZE=2>&gt; +#&nbsp; ifdef INFINITIES</FONT>
<BR><FONT SIZE=2>&gt;&nbsp; double INFINITY = 1.0 / 0.0; /* 99e999; */</FONT>
<BR><FONT SIZE=2>&gt; -#else</FONT>
<BR><FONT SIZE=2>&gt; +#&nbsp; else</FONT>
<BR><FONT SIZE=2>&gt;&nbsp; double INFINITY = 1.79769313486231570815E308;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* </FONT>
<BR><FONT SIZE=2>&gt; 2**1024*(1-MACHEP) */</FONT>
<BR><FONT SIZE=2>&gt; +#&nbsp; endif</FONT>
<BR><FONT SIZE=2>&gt;&nbsp; #endif</FONT>
<BR><FONT SIZE=2>&gt;&nbsp; </FONT>
<BR><FONT SIZE=2>&gt;&nbsp; #ifdef MINUSZERO</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; Good luck</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; Jon Kåre</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
</P>

</BODY>
</HTML>
------_=_NextPart_001_01C1DF8D.F305F040--