« Bugzilla Issues Index
#1547 — 15.11.1.1+15.11.7.1.1: Use DefinePropertyOrThrow in step 6f
- bug_id:
1547
- creation_ts:
2013-05-31 06:24:00 -0700
- short_desc:
15.11.1.1+15.11.7.1.1: Use DefinePropertyOrThrow in step 6f
- delta_ts:
2013-06-18 12:57:14 -0700
- product:
Draft for 6th Edition
- component:
technical issue
- version:
Rev 15: May 14, 2013 Draft
- rep_platform:
All
- op_sys:
All
- bug_status:
RESOLVED
- resolution:
FIXED
- priority:
Normal
- bug_severity:
enhancement
- everconfirmed:
true
- reporter:
André Bargull
- assigned_to:
Allen Wirfs-Brock
- commentid:
4127
- comment_count:
0
- who:
André Bargull
- bug_when:
2013-05-31 06:24:38 -0700
Using DefinePropertyOrThrow saves the overhead of testing [[DefineOwnProperty]]'s return value and throwing a TypeError in step 6f.
- commentid:
4248
- comment_count:
1
- who:
Allen Wirfs-Brock
- bug_when:
2013-06-18 12:08:55 -0700
Can't use DefinePropertyOrThrow here because the the [[Enumerable]] attribute must be set to false which is not the default value that DPOT sets.
There should be any actual runtime overhead difference as the error cases are the same regardless of the formulation in the spec.
- commentid:
4250
- comment_count:
2
- who:
André Bargull
- bug_when:
2013-06-18 12:15:07 -0700
DefinePropertyOrThrow does not set any property attribute, did you mean CreateOwnDataProperty? (Or did DefinePropertyOrThrow change in your current draft compared to re15?)
- commentid:
4254
- comment_count:
3
- who:
Allen Wirfs-Brock
- bug_when:
2013-06-18 12:57:14 -0700
Duh, you're right. I was thinking CreateOwnProperty because that's literally what is happening there.
DefinePropertyOrThrow would be ok there. It doesn't really make any difference, but I agree that it reads a little better that way so I'll make the change.
In Rev 16 editor's draft