Closed Bug 150032 Opened 23 years ago Closed 23 years ago

Conflict between function members and vars

Categories

(Core :: JavaScript Engine, defect)

x86
Windows 2000
defect
Not set
normal

Tracking

()

VERIFIED DUPLICATE of bug 137000

People

(Reporter: john, Assigned: rogerl)

Details

From Bugzilla Helper: User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.0.0) Gecko/20020530 BuildID: Gecko/20020530 Mozilla gets confused by a var inside a function, that has the same name as a function member. Reproducible: Always Steps to Reproduce: 1. Run the following html and script code: <html> <body> <script> function funcA(){ var classpropA = funcA.classpropA; var classpropFoo = funcA.classpropBar; this.print = function(){ alert(classpropA + ', ' + classpropFoo); }; } funcA.classpropA = 'classpropA'; funcA.classpropBar = 'classpropBar'; var myfunc = new funcA(); myfunc.print(); </script> </body> <html> Actual Results: classpropA is undefined but should have the string value of "classpropA". Expected Results: classpropA is undefined but should have the string value of "classpropA".
Confirming bug with Mozilla trunk binary 20020530xx and cc'ing Brendan. Output from the reporter's test: IE6 'classpropA, classpropBar' Moz 'undefined', classpropBar' This is similar enough to bug 137000 to mark this as a duplicate, I think. I will add the reporter's test to the testcase for the other bug: mozilla/js/tests/js1_5/Object/regress-137000.js In bug 137000, the problem is a parameter to a function f() with the same name as an object property of f. In this bug, a local variable declared inside f() has the same name as a property of f. Brendan: please reopen this bug if this dupe was inappropriate; thanks - jrgm and john@statesoftware.com: I'll cc you on the other bug. *** This bug has been marked as a duplicate of 137000 ***
Status: UNCONFIRMED → RESOLVED
Closed: 23 years ago
Resolution: --- → DUPLICATE
Marking Verified -
Status: RESOLVED → VERIFIED
Oops, forgot to cc Brendan. No action necessary; just checking that it was appropriate to mark this as a duplicate of bug 137000 -
You need to log in before you can comment on or make changes to this bug.