20 years of rubbish and still counting
Posted 26 August 2005 - 05:04 PM
So I thought I'd share this "feature" with you..
#v1 = 0
#v2 = - #v1
IF #v1 = #v2 THEN UMSG("Yes, #v1 equals #v2", -1) ;
IF #v1 <> - #v1 THEN UMSG("No, #v1 does not equal -#v1", -1)
You have to try it to believe it..
Posted 27 August 2005 - 10:58 AM
No, that's the entire (test) function.
The point is not that #v1 = #v2, it does, as you would expect.
The point is that #v1 <> -#v1 is also true.. Which is WRONG, WRONG, WRONG..
I hit this on V4.6 on Linux but it's so fundamental I'd bet it's universal unless it's been subsequently fixed.
You did see the second message too? Or didn't you?!
On a historical note..
Edited by Richard Bassett, 27 August 2005 - 10:59 AM.
Posted 27 August 2005 - 03:50 PM
VERRY interesting Rob..
Hi, I only see the first UMSG....
I know you'd have been careful but would you mind just sanity checking that you did the code exactly as shown.
And maybe just try the following more obvious one-liner that I should have posted to start with..
IF 0 = -0 THEN UMSG("Equal",-1) ELSE UMSG("Not equal",-1) ;
I see "not equal". Let me know your mileage and what platform you're on.
Not in this universe you can't Bob.
zero is .. neither positive nor negative .. but then again, I can be wrong.
Posted 27 August 2005 - 05:09 PM
I get the 'Equal' UMSG from the 2nd example.
I'm using Windows XP (SP2) and ProIV 5.5r333
Check out our game "Something Ate My Alien"
Posted 27 August 2005 - 06:44 PM
Maybe it is due to some defective math processors??
The computer is the only entity that thinks 2 + 2 = 5
Then, perhaps we're stuck in the
What do I know??
PS> I spent the last 3 hours trying to find a silly syntax error. Doesn't pay to work when you are tired. I need a vacation
Posted 28 August 2005 - 10:30 AM
Thanks for that. I'll try it on a a couple of other systems and see what I get.
Hopefully your result indicates that it's been fixed during the last 5 years
There are certainly defective math processors but FWIW that is unlikely to be relevant to ProIV because ProIV's "numeric" data type is a decimal representation implemented in software. ProIV doesn't have the integer or binary-floating-point data types that are typically implemented by hardware.
I was definitely in the Twilight Zone Friday afternoon though.
Guest_Guest - Rick_*
Posted 29 August 2005 - 02:36 PM
I was in a bad frame of mind Friday PM though and I admit I wasn't really expecting V5.5 would make any difference
Reply to this topic
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users