Closed Bug 309957 Opened 19 years ago Closed 18 years ago

or operator || yields true for expression "test" || 1 but should yield "test"

Categories

(Rhino Graveyard :: Core, defect)

1.6R1
x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: martin.honnen, Unassigned)

References

Details

Attachments

(1 file)

Test with the Rhino shell looks as follows:

Rhino 1.6 release 2 2005 09 19
js> "test" || 1
true

Result in thise case should be the value of the first operand, the string value
"test".

I have selected "Version 1.6R1" in bugzilla but the bug is in R1 and R2, only
bugzilla does not have to seem updated to allow filing bugs on 1.6R2.

I have now also tried Rhino 1.5 release 5 2004 03 25 but see the bug there too.

Bug was reported in
<http://groups.google.com/group/netscape.public.mozilla.jseng/browse_frm/thread/859fb9f749d0f6cc/65e8f561028358a5?hl=en#65e8f561028358a5>
Attached patch FixSplinter Review
Here is the patch to fix broken static optimizations in the parser.
*** Bug 317684 has been marked as a duplicate of this bug. ***
*** Bug 312780 has been marked as a duplicate of this bug. ***
Wondering whether Igor should still be default assignee for Rhino bugs...  Atilla is heir apparent.

/be
(In reply to comment #4)
> Wondering whether Igor should still be default assignee for Rhino bugs... 
> Atilla is heir apparent.

See bug 288433.

Although the situation is not as bad as I indicated in the bug regading my relations with Rhino and I still hope to find some time to commit few patches laying in bugzilla. The problem is that it requires to run the test suite. But this is time-consuming as quite a few recent tests runs for very long time or non-applicable to Rhino so rhino-n.tests has to be properly updated.

If somebody would address it, that would be nice.
Reassigning to please_see_bug_288433@eml.cc pending resolution of bug 288433
Assignee: igor.bukanov → please_see_bug_288433
Problem still seems to be in Rhino R1.6 release 2 (Ie the current version,
I down loaded it yesterday).
109 || 16 comes to true in Rhino but web browsers show it as 109 
http://www.cs.ucl.ac.uk/staff/W.Langdon/demo_309957.html
Assignee: please_see_bug_288433 → nobody
Status: NEW → ASSIGNED
Committed the patch to CVS, will be in 1.6R3.

Works correctly for me:

before:
=======
js>109 || 2;
true
js> x = 109;
109
js> x || 2; 
true

after:
======
js> 109 || 2;
109
js> var x = 109;
js> x || 2;
109
Status: ASSIGNED → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: