delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2003/07/19/09:07:30

Sender: rich AT phekda DOT freeserve DOT co DOT uk
Message-ID: <3F193B0D.5883544E@phekda.freeserve.co.uk>
Date: Sat, 19 Jul 2003 13:35:25 +0100
From: Richard Dawe <rich AT phekda DOT freeserve DOT co DOT uk>
X-Mailer: Mozilla 4.77 [en] (X11; U; Linux 2.2.23 i586)
X-Accept-Language: de,fr
MIME-Version: 1.0
To: DJGPP workers <djgpp-workers AT delorie DOT com>,
"K. B. Williams" <Kbwms AT aol DOT com>
Subject: Re: Changes to Files in Archive djtst203.zip
References: <000001c34a03$a05afa20$0101a8c0 AT acp42g>
Reply-To: djgpp-workers AT delorie DOT com

Hello.

DJGPP wrote:
> 
> All,
> 
> This change does not appear to have been committed yet. Did I miss something
> as to why not?
> 
> Thanks,
> Andrew
> 
> -----Original Message-----
> From: Kbwms AT aol DOT com [mailto:Kbwms AT aol DOT com]
> Sent: Monday, 9 June 2003 12:21 AM
> To: djgpp-workers AT delorie DOT com
> Subject: Changes to Files in Archive djtst203.zip
> 
> This email pertains to source files in archive djtst203.zip.  The sources at
> issue reside in subdirectories of /djgpp/tests/cygnus/.
> 
> KB Williams
> 
> 1.  Replace the makefile in subdirectory tgen with the CVS version at
> http://www.ludd.luth.se/~ams/djgpp/cvs/djgpp/tests/cygnus/tgen/makefile
> 
>     This makefile fixes a linker error associated with C++ compilations.
> 
> 2.  To squelch initializer-error messages (startling but not fatal) when
> compiling the sources in subdirectory qfloat of subdirectory tgen I made a
> simple change to file qhead.h in qfloat.
> 
> *** tests/cygnus/tgen/qfloat/qhead.h.old Sat Jun  7 19:40:56 2003
> --- tests/cygnus/tgen/qfloat/qhead.h Sat Jun  7 17:24:24 2003
> ***************
> *** 17,23 ****
>   #define EXPONE 0x8001
> 
>   /* Number of WORDSIZE-bit words in a q type number (12 or 24) */
> ! #define NQ 9 /* was 12 - ok */
> 
>   /* Number of words in significand area */
>   #define OMG (NQ-2)
> --- 17,23 ----
>   #define EXPONE 0x8001
> 
>   /* Number of WORDSIZE-bit words in a q type number (12 or 24) */
> ! #define NQ 14 /* was 12 - ok */
> 
>   /* Number of words in significand area */
>   #define OMG (NQ-2)

Unfortunately this causes problems. pow_vec.c and powf_vec.c appear to be
misgenerated, when the above patch has been applied. I see lots of lines like
"qlog singularity error" - e.g.:

#include "test.h"
 one_line_type pow_vec[] = {

qlog singularity error

qmul overflow error
{62, 0, 0,__LINE__, 0x00000000, 0x00000000, 0x3fc00000, 0x00000000,
0xc0733a71,
0x46f72a42,},   /* +0.0000E+00=F(  +0.125,  -307.7) */

qlog singularity error

qmul overflow error
{62, 0, 0,__LINE__, 0x00000000, 0x00000000, 0x3fc00000, 0x00000000,
0xc072067d,
0x223a7520,},   /* +0.0000E+00=F(  +0.125,  -288.4) */
...

Here are the errors I get, when building:

gcc -D_USE_LIBM_MATH_H -D_HAVE_STDC -O2 -g -nostdinc
-Ic:/DJGPP.GCC33/tests/cygnus -Ic:/DJGPP.GCC33/tests/cygnus/../../include  -c
-o pow_vec.o pow_vec.c
In file included from c:/DJGPP.GCC33/include/math.h:9,
                 from test.h:6,
                 from pow_vec.c:1:
c:/DJGPP.GCC33/include/libm/math.h:170: warning: conflicting types for
built-in
function `nan'
c:/DJGPP.GCC33/include/libm/math.h:266: warning: conflicting types for
built-in
function `nanf'
pow_vec.c:4: error: `qlog' undeclared here (not in a function)
pow_vec.c:4: error: initializer element is not constant
pow_vec.c:4: error: (near initialization for `pow_vec[0]')
pow_vec.c:4: error: parse error before "singularity"
pow_vec.c:7: error: initializer element is not constant
pow_vec.c:7: error: (near initialization for `pow_vec[1].qs[0]')
pow_vec.c:7: error: initializer element is not constant
pow_vec.c:7: error: (near initialization for `pow_vec[1].qs[1]')
pow_vec.c:7: error: initializer element is not constant
pow_vec.c:7: error: (near initialization for `pow_vec[1].qs[2]')
pow_vec.c:7: error: initializer element is not constant
pow_vec.c:7: error: (near initialization for `pow_vec[1].qs')
pow_vec.c:7: error: initializer element is not constant
pow_vec.c:7: error: (near initialization for `pow_vec[1]')
pow_vec.c:9: error: parse error before "singularity"
make.exe: *** [pow_vec.o] Error 1

This is when building with gcc 3.3, binutils 2.13.

So I have not applied the patch above in DJGPP CVS.

Incidentally, could someone fix these errors please? This is when building
with gcc 3.3, binutils 2.13 in tests/cygnus.

gcc -D_USE_LIBM_MATH_H -D_HAVE_STDC -O2 -g -nostdinc
-Ic:/DJGPP.GCC33/tests/cygnus -Ic:/DJGPP.GCC33/tests/cygnus/../../include  -c
-o y0f_vec.o y0f_vec.c
In file included from c:/DJGPP.GCC33/include/math.h:9,
                 from test.h:6,
                 from y0f_vec.c:1:
c:/DJGPP.GCC33/include/libm/math.h:170: warning: conflicting types for
built-in 
function `nan'
c:/DJGPP.GCC33/include/libm/math.h:266: warning: conflicting types for
built-in 
function `nanf'

Thanks, bye, Rich =]

-- 
Richard Dawe [ http://www.phekda.freeserve.co.uk/richdawe/ ]

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019