Re: failure due to compiler?

baynes@ukpsshp1.serigate.philips.nl
13 Jul 1996 22:05:34 -0400

          From comp.compilers

Related articles
[7 earlier articles]
Re: failure due to compiler? grout@polestar.csrd.uiuc.edu (1996-07-10)
Re: failure due to compiler? khays@sequent.com (1996-07-10)
Re: failure due to compiler? cliffc@ami.sps.mot.com (1996-07-10)
Re: failure due to compiler? WStreett@shell.monmouth.com (1996-07-13)
Re: failure due to compiler? jfc@mit.edu (1996-07-13)
Re: failure due to compiler? bobduff@world.std.com (1996-07-13)
Re: failure due to compiler? baynes@ukpsshp1.serigate.philips.nl (1996-07-13)
Re: failure due to compiler? alain@phidani.be (Corchia Alain) (1996-07-15)
Type Compatibility (was:failure due to compiler?) dlmoore@ix.netcom.com (1996-07-15)
Re: failure due to compiler? dave_sc@csl.sri.com (1996-07-15)
Re: failure due to compiler? kanze@lts.sel.alcatel.de (1996-07-16)
Re: failure due to compiler? glew@ichips.intel.com (1996-07-16)
Re: failure due to compiler? WStreett@shell.monmouth.com (1996-07-16)
[16 later articles]
| List of all articles for this month |
From: baynes@ukpsshp1.serigate.philips.nl
Newsgroups: comp.compilers
Date: 13 Jul 1996 22:05:34 -0400
Organization: Compilers Central
References: 96-07-035 96-07-052
Keywords: errors

George C. Lindauer (gclind01@starbase.spd.louisville.edu) wrote:
: resler@liberty.mas.vcu.edu (Dan Resler) writes:


: >I am looking for pointers or references to descriptions where software
: >has compiled without error and later failed due to compiler-introduced
: >errors in the resultant program. In other words, the source was deemed
: >to be error free but the compiler botched the code generation. Any
: >help would be appreciated; thanks.


DEC onece produced a release of their VMS Pascal compiler where
it missoptimized A := A + B


An apollo pascal compiler misscounted by one on a loop that counted
down to zero.


I had an HP C compiler generate an infinite loop for something like:


        { RHs_SEmem_ent *ee;
                long sa
                sa = ADDRESS;
                ee = SOMETHING;
                while( ee->start > sa ) ee = ee->next;
                *EPTR = ee;
        }


There have been others that I have forgotton.


If I look at the bug reports for the C compiler (for an embeded micro) that
I maintain then there are several: For example


A = X[ B << 4 - B ]; Compiler lost from register the value B by doing
                                                        things in the wrong order.


static int d;
static unsigned short a =1, b = 0xFFFF;


f(){
        short c = a -b;
        d - c;
}


        Failed to truncate the value of a -b to short before assinging to d.




I have also had problems when a compiler has compiled without error illegal
code. For example Microsoft C compilers that allowed signed char* to be
assigned to unsigned char* without warning restulting in a char with the value
0xFF being interpreted as an int 0xFF in one place and -1 in another. DEC
'extended' their pascal compiler to permit records with the same structure to
be type compatible. This caused us several bugs, one of which got so deeply
embeded in the system before it was found that we were never able to completely
fix it.




--
Stephen Baynes baynes@ukpsshp1.serigate.philips.nl
Philips Semiconductors Ltd
Southampton
United Kingdom
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.