*BSD News Article 17241


Return to BSD News archive

Newsgroups: comp.os.386bsd.questions
Path: sserve!newshost.anu.edu.au!munnari.oz.au!metro!ipso!runxtsa!bde
From: bde@runx.oz.au (Bruce Evans)
Subject: Re: perl pl36
Message-ID: <1993Jun17.081306.25519@runx.oz.au>
Organization: RUNX Un*x Timeshare.  Sydney, Australia.
References: <1993Jun16.141721.10321@craycos.com> <1vnmrvINN7oi@xs4all.hacktic.nl> <C8qA1v.69w@raistlin.udev.cdc.com>
Date: Thu, 17 Jun 93 08:13:06 GMT
Lines: 21

In article <C8qA1v.69w@raistlin.udev.cdc.com> pbd@runyon.cim.cdc.com (Paul Dokas) writes:
>...
>  float a = 1.9;
>
>  printf("(int) d = %d\n", (int) d);
>...
>compiled with the old c compiler (gcc 1.39), the result is:
>
>(int) d = 2
>
>but compiled with the new compiler (gcc 2.4.3.1), the result is:
>
>(int) d = 1
>
>I believe that this points to gcc 1.39 as the rounding culprit.

Nope.  386BSD has broken library support for gcc-1.39 (files fixdfsi.s
and fixunsdfsi.s), while gcc-2.x does not require the library support.
Fixes for at least fixdfsi.s have been posted several times.
-- 
Bruce Evans  bde@kralizec.zeta.org.au