So far "delete" has been left out of the float4 spec, but there needs to be a little bit of special support for the numbered properties 0, 1, 2, 3 (and their string representations). Specifically, v = float4(1) print(delete v) should print "false", ditto for indices 0, 1, and 3 and "0", "1", "2", "3". Right now the code above throws an error, which is wrong. Once we have test cases we will also see that there will be bugs filed for the incorrect implementation of delete. (New specs are forthcoming; the 29 November 2011 specs do not cover this.)
Created attachment 581907 [details] Tentative test cases These test cases will crash ASC. Filed as bug #711007.
Created attachment 581910 [details] Tentative test cases, v2
Attachment #581907 - Attachment is obsolete: true
A "delete" on a float4 will always end up in MethodEnv::delproperty through both interpreter and jit, so the logic can probably be concentrated in that method.
Status: NEW → RESOLVED
Last Resolved: 7 years ago
Resolution: --- → FIXED
Code, spec, and test media in sync as of these revisions: tr-float: changeset: 7087:10d6f2a953fc tag: tip user: Lars T Hansen <email@example.com> date: Thu Dec 15 14:44:54 2011 +0100 summary: Fix 706584 - Test media and bug fixes for delete operator on float4 specs: changeset: 762:e6b8a420b247 tag: tip user: Lars T Hansen <firstname.lastname@example.org> date: Thu Dec 15 14:52:18 2011 +0100 summary: Clarified the behavior of the delete operator on float4
changeset: 7143:23de30953af3 user: Brent Baker <email@example.com> summary: Bug 706584: add delete testcase for float4 that produces a reference error that must be compiled without strict mode http://hg.mozilla.org/tamarin-redux/rev/23de30953af3
You need to log in before you can comment on or make changes to this bug.