From: <re...@ai...> - 2001-09-24 19:45:01
|
Date: Fri, 21 Sep 2001 14:09 EDT From: Sam Steingold <sd...@gn...> > * In message <20010921170920.2.RETI@RAINIER-VLM.AI.MIT.EDU> > * On the subject of "Re: [clisp-list] Problems compiling clisp 2.27 for Tru64 5.1 on Alpha using cc" > * Sent on Fri, 21 Sep 2001 13:09 -0400 > * Honorable re...@ai... writes: > > [mailing list removed] please do not do that because mailing lists are archived and my personal mail is not. Sorry, I was just trying to prevent bothering everyone with what seemed like a one-on-one conversation. > (loop for size from 2 to 40 do (handler-case (bin-stream-test :size size :type'signed-byte) (error (e) (format t "~&Case ~d got error ~a" size e)))) > > and got this result: > > Case 2 got error > * [(SIGNED-BYTE 2)] -10 != 1.70139s38 you also got errors until case 35, i.e., bignums are broken too. > The problem appears to be in the following code from the rd_by_iu_I routine in stream.d/c: > > return negfixnum(wbitm(intLsize)+(oint)wert); > > The wbitm appears to be adding 0x100000000 to the correct signed C > value in wert, and then negfixnum is adding that to 0x4200000000 to Whoops, the above should have been 0x43000000 insteand of 0x4200000000. > produce 0x44xxxxxxxx. If I change it back to 0x43xxxxxxxx, I get the > right answer, so whatever bit 0x100000000 is (the mark bit?), it is > erroneously getting added in twice apparently changing the type code. I was wrong. It got what appeared to be the right answer, i.e. it printed out as -1 or -2 (the two test cases I used in the 2-bit case) but those returned values were not EQ (or EQL or EQUAL) to a typed-in -1 or -2. 0x43ffffffff prints out as -1, but 0x42ffffffff is the real -1. interesting. what if you replace the line with return negfixnum((oint)wert); what does "make check" say? It still fails, but this time because the values, although they print out OK, are not EQL, since they have the 0x43 type bits instead of the 0x42 type bits. thanks. -- Sam Steingold (http://www.podval.org/~sds) Support Israel's right to defend herself! <http://www.i-charity.com/go/israel> Read what the Arab leaders say to their people on <http://www.memri.org/> OK, so you're a Ph.D. Just don't touch anything. |