Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!rutgers!ames!ucbcad!ucbvax!decvax!tektronix!sequent!mntgfx!dclemans From: dclemans@mntgfx.MENTOR.COM (Dave Clemans) Newsgroups: comp.sys.atari.st Subject: Re: Mark Williams ver 2.0 info Message-ID: <639@dclemans.mntgfx.MENTOR.COM> Date: Tue, 12-May-87 11:34:34 EDT Article-I.D.: dclemans.639 Posted: Tue May 12 11:34:34 1987 Date-Received: Sat, 16-May-87 01:28:16 EDT References: <8704302259.AA00661@ucbvax.Berkeley.EDU> <4722@utcsri.UUCP> <692@ttidca.TTI.COM> Organization: Mentor Graphics, Beaverton OR Lines: 12 Summary: another known bug Another Mark Williams C 2.0 bug; there is as least one case where the compiler will, in an expression that has generated a 16-bit signed temporary result and that temporary result needs to be extended to 32 bits (again signed), generate the incorrect code to do the sign extension. Instead of the correct "ext.l" instruction, it generates "ext.w", which clobbers the top byte of the 16 bit temporary result. Assuming that their assembler is written in C, the previously reported bug in the assembler might even be caused by this. dgc