[3610] in Athena Bugs
Saber msg: v2.1 (5/10/89 pit-manager ibmrt Unix 4042 0)
daemon@ATHENA.MIT.EDU (Jonathan I. Kamens)
Wed Nov 8 23:54:42 1989
Date: Wed, 8 Nov 89 23:54:17 -0500
From: Jonathan I. Kamens <jik@PIT-MANAGER.MIT.EDU>
To: bugs@ATHENA.MIT.EDU
Cc: jik@PIT-MANAGER.MIT.EDU
(I've played with the order of the commands a little bit to make the
presentation of the problem a bit clearer, but it doesn't affect
anything.)
The constant 0x80000000 is getting turned into 0x7fffffff. It is
repeatable. It is present only on the RT version of Saber (i.e. it
doesn't happen on the VAX version I have available for testing).
0x80000000L is evaluated properly, which makes me suspect that the
problem is somehow in the number parser, although I don't know what it
could be.
3 -> (unsigned long) 0x80000000;
(unsigned int) 0x7fffffff
1 -> unsigned long foo;
4 -> foo = 0x80000000;
(unsigned int) 0x7fffffff
9 -> foo = (unsigned long) 0x80000000;
(unsigned int) 0x7fffffff
5 -> foo + 1;
(unsigned int) 0x80000000
6 -> foo++;
(unsigned int) 0x7fffffff
7 -> foo;
(unsigned int) 0x80000000
8 -> foo = 0x80000000L;
(unsigned int) 0x80000000
Jonathan Kamens USnail:
MIT Project Athena 11 Ashford Terrace
jik@Athena.MIT.EDU Allston, MA 02134
Office: 617-253-8495 Home: 617-782-0710