[gnu.gcc.bug] 1.36/i386 chokes on 0x80000000?

lance@ORC.OLIVETTI.COM (09/29/89)

This is encountered on a 386 running Mach with CMU's modified
4.3BSD libc.a. We use a slightly modified tm-i386v.h.

main()
{
  unsigned loser1 = 0x80000001;
  unsigned loser2 = 0x80000000;
  unsigned loser3 = 0x7fffffff;
}

/usr/local/src/gcc-1.36/cc1 -quiet -version lose.c

GNU C version 1.36 (80386, ATT syntax) compiled by GNU C version 1.36.
default target switches: -m80387

cat lose.s

        .file   "lose.c"
gcc_compiled.:
.text
        .align 4
.globl main
main:
        pushl %ebp
        movl %esp,%ebp
        subl $12,%esp
        movl $-2147483647,-4(%ebp)
        movl $--./,),(-*,(,-8(%ebp)	<--- Chunder!
        movl $2147483647,-12(%ebp)
.L1:
        leave
        ret

Is this a hallucination?

Lance Berc
lance@orc.olivetti.com

lance@ORC.OLIVETTI.COM (09/29/89)

The bogus output has been traced to a broken libg.a. Sorry!

lance