11.4.1-0-1.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: delete operator as UnaryExpression
flags: [noStrict]
--- |
612 |
11.4.1-2-2.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator returns true when deleting returned value from a
function
--- |
508 |
11.4.1-3-1.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator returns true when deleting an unresolvable
reference
flags: [noStrict]
--- |
413 |
11.4.1-3-2.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator throws ReferenceError when deleting an explicitly
qualified yet unresolvable reference (base obj undefined)
--- |
445 |
11.4.1-3-3.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator returns true when deleting an explicitly qualified
yet unresolvable reference (property undefined for base obj)
--- |
425 |
11.4.1-4-a-1-s-strict.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
Strict Mode - TypeError is thrown when deleting non-configurable
data property
flags: [onlyStrict]
--- |
564 |
11.4.1-4-a-2-s-strict.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
Strict Mode - TypeError is thrown when deleting non-configurable
accessor property
flags: [onlyStrict]
--- |
595 |
11.4.1-4-a-3-s.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
TypeError isn't thrown when deleting configurable data property
--- |
512 |
11.4.1-4-a-4-s.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
TypeError isn't thrown when deleting configurable accessor property
--- |
543 |
11.4.1-4.a-1.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator returns true when deleting a configurable data
property
--- |
738 |
11.4.1-4.a-2.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator returns true when deleting a configurable accessor
property
--- |
824 |
11.4.1-4.a-3-s-strict.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator throws TypeError when deleting a non-configurable
data property in strict mode
flags: [onlyStrict]
--- |
827 |
11.4.1-4.a-3.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator returns false when deleting a non-configurable
data property
flags: [noStrict]
--- |
879 |
11.4.1-4.a-4.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator returns false when deleting a non-configurable
data property (NaN)
flags: [noStrict]
--- |
639 |
11.4.1-4.a-5.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator returns false when deleting the declaration of the environment object
inside 'with'
flags: [noStrict]
--- |
733 |
11.4.1-4.a-6.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: delete operator returns true when deleting a property inside 'with'
flags: [noStrict]
--- |
647 |
11.4.1-4.a-7.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: delete operator inside 'eval'
flags: [noStrict]
--- |
569 |
11.4.1-4.a-8-s-strict.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator throws TypeError when deleting a non-configurable
data property in strict mode
flags: [onlyStrict]
--- |
695 |
11.4.1-4.a-8.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: delete operator returns true for built-in objects (JSON)
flags: [noStrict]
--- |
550 |
11.4.1-4.a-9-s-strict.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator throws TypeError when deleting a non-configurable
data property (Math.LN2) in strict mode
flags: [onlyStrict]
--- |
632 |
11.4.1-4.a-9.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator returns false when deleting a non-configurable
data property (Math.LN2)
flags: [noStrict]
--- |
596 |
11.4.1-4.a-10.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator returns true for property (stringify) defined on
built-in object (JSON)
--- |
646 |
11.4.1-4.a-11.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator returns true on deleting arguments
properties(arguments.callee)
flags: [noStrict]
--- |
688 |
11.4.1-4.a-12.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: delete operator returns false when deleting a property(length)
flags: [noStrict]
--- |
633 |
11.4.1-4.a-13.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: delete operator returns false when deleting Array object
flags: [noStrict]
--- |
640 |
11.4.1-4.a-14.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: delete operator returns true when deleting Array elements
--- |
605 |
11.4.1-4.a-15.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: delete operator returns true when deleting Array expandos
--- |
602 |
11.4.1-4.a-16.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: delete operator returns false on deleting arguments object
flags: [noStrict]
--- |
641 |
11.4.1-4.a-17.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: delete operator returns true on deleting a arguments element
--- |
635 |
11.4.1-5-1.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator returns false when deleting a direct reference to
a var
flags: [noStrict]
--- |
475 |
11.4.1-5-2.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator returns false when deleting a direct reference to
a function argument
flags: [noStrict]
--- |
575 |
11.4.1-5-3.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator returns false when deleting a direct reference to
a function name
flags: [noStrict]
--- |
530 |
11.4.1-5-a-27-s-strict.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
Strict Mode - TypeError is thrown after deleting a property,
calling preventExtensions, and attempting to reassign the property
flags: [onlyStrict]
--- |
557 |
11.4.1-5-a-28-s.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: Strict Mode - TypeError is not thrown when deleting RegExp.length
--- |
357 |
11.4.4-4.a-3-s-strict.js |
---
info: |
This test is actually testing the [[Delete]] internal method (8.12.8). Since the
language provides no way to directly exercise [[Delete]], the tests are placed here.
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operator throws TypeError when deleting a non-configurable
data property in strict mode
flags: [onlyStrict]
--- |
827 |
browser.js |
|
0 |
delete-unresolvable-base-object-reference-throws-typeerror.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
delete operations throws TypeError exception when base object is unresolvable reference.
--- |
386 |
identifier-strict-recursive-strict.js |
---
esid: sec-delete-operator-static-semantics-early-errors
description: Parsing error when operand is an IdentifierReference
info: |
It is a Syntax Error if the UnaryExpression is contained in strict mode code
and the derived UnaryExpression is PrimaryExpression:IdentifierReference.
negative:
phase: parse
type: SyntaxError
flags: [onlyStrict]
--- |
634 |
identifier-strict-strict.js |
---
esid: sec-delete-operator-static-semantics-early-errors
description: Parsing error when operand is an IdentifierReference
info: |
It is a Syntax Error if the UnaryExpression is contained in strict mode code
and the derived UnaryExpression is PrimaryExpression:IdentifierReference.
negative:
phase: parse
type: SyntaxError
flags: [onlyStrict]
--- |
582 |
member-computed-reference-null.js |
---
esid: sec-delete-operator
description: Delete Operator throws an error if the base reference is not object-coercible (null).
info: |
# 12.5.3.2 Runtime Semantics: Evaluation
UnaryExpression : delete UnaryExpression
[...]
5. If IsPropertyReference(ref) is true, then
a. If IsSuperReference(ref) is true, throw a ReferenceError exception.
b. Let baseObj be ? ToObject(ref.[[Base]]).
--- |
652 |
member-computed-reference-undefined.js |
---
esid: sec-delete-operator
description: Delete Operator throws an error if the base reference is not object-coercible (undefined).
info: |
# 12.5.3.2 Runtime Semantics: Evaluation
UnaryExpression : delete UnaryExpression
[...]
5. If IsPropertyReference(ref) is true, then
a. If IsSuperReference(ref) is true, throw a ReferenceError exception.
b. Let baseObj be ? ToObject(ref.[[Base]]).
--- |
662 |
member-identifier-reference-null.js |
---
esid: sec-delete-operator
description: Delete Operator throws an error if the base reference is not object-coercible (null).
info: |
# 12.5.3.2 Runtime Semantics: Evaluation
UnaryExpression : delete UnaryExpression
[...]
5. If IsPropertyReference(ref) is true, then
a. If IsSuperReference(ref) is true, throw a ReferenceError exception.
b. Let baseObj be ? ToObject(ref.[[Base]]).
--- |
654 |
member-identifier-reference-undefined.js |
---
esid: sec-delete-operator
description: Delete Operator throws an error if the base reference is not object-coercible (undefined).
info: |
# 12.5.3.2 Runtime Semantics: Evaluation
UnaryExpression : delete UnaryExpression
[...]
5. If IsPropertyReference(ref) is true, then
a. If IsSuperReference(ref) is true, throw a ReferenceError exception.
b. Let baseObj be ? ToObject(ref.[[Base]]).
--- |
664 |
non-reference-return-true.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
The delete expression should return true if the right hand UnaryExpression is not a Reference
info: |
Runtime Semantics: Evaluation
UnaryExpression : delete UnaryExpression
1. Let ref be the result of evaluating UnaryExpression.
2. ReturnIfAbrupt(ref).
3. If Type(ref) is not Reference, return true.
--- |
1644 |
S8.12.7_A1.js |
---
info: |
When the [[Delete]] method of O is called with property name P,
and If the property has the DontDelete attribute, return false
esid: sec-delete-operator-runtime-semantics-evaluation
description: Try to delete Math.E, that has the DontDelete attribute
flags: [noStrict]
--- |
1011 |
S8.12.7_A2_T1.js |
---
info: |
When the [[Delete]] method of O is called with property name P,
and if O doesn't have a property with name P, return true
esid: sec-delete-operator-runtime-semantics-evaluation
description: Try to delete not existent properties
--- |
1537 |
S8.12.7_A2_T2.js |
---
info: |
When the [[Delete]] method of O is called with property name P,
and if O doesn't have a property with name P, return true
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
Try to delete not existent properties of O, but existent property
of prototype
--- |
1804 |
S8.12.7_A3.js |
---
info: |
When the [[Delete]] method of O is called with property name P,
removes the property with name P from O and return true
esid: sec-delete-operator-runtime-semantics-evaluation
description: Delete existent properties
--- |
2628 |
S11.4.1_A2.1.js |
---
info: If Type(x) is not Reference, return true
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking primitive value and Object value cases
--- |
530 |
S11.4.1_A2.2_T1.js |
---
info: If GetBase(x) doesn't have a property GetPropertyName(x), return true
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking undeclared variable case
flags: [noStrict]
--- |
452 |
S11.4.1_A2.2_T2.js |
---
info: If GetBase(x) doesn't have a property GetPropertyName(x), return true
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking Object object and Function object cases
--- |
768 |
S11.4.1_A2.2_T3.js |
---
info: If GetBase(x) doesn't have a property GetPropertyName(x), return true
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking undeclared variable case
--- |
444 |
S11.4.1_A3.1.js |
---
info: If the property has the DontDelete attribute, return false
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking declared variable
flags: [noStrict]
--- |
944 |
S11.4.1_A3.2_T1.js |
---
info: If the property doesn't have the DontDelete attribute, return true
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking declared variable
flags: [noStrict]
--- |
456 |
S11.4.1_A3.2_T2.js |
---
info: If the property doesn't have the DontDelete attribute, return true
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking declared variable
--- |
552 |
S11.4.1_A3.2_T3.js |
---
info: If the property doesn't have the DontDelete attribute, return true
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking declared variable
--- |
612 |
S11.4.1_A3.3_T1.js |
---
info: If the property doesn't have the DontDelete attribute, remove the property
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking declared variable
flags: [noStrict]
--- |
602 |
S11.4.1_A3.3_T2.js |
---
info: If the property doesn't have the DontDelete attribute, remove the property
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking declared variable
--- |
636 |
S11.4.1_A3.3_T3.js |
---
info: If the property doesn't have the DontDelete attribute, remove the property
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking declared variable
--- |
714 |
S11.4.1_A3.3_T4.js |
---
info: If the property doesn't have the DontDelete attribute, remove the property
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking declared variable
flags: [noStrict]
--- |
602 |
S11.4.1_A3.3_T5.js |
---
info: If the property doesn't have the DontDelete attribute, remove the property
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking declared variable
flags: [noStrict]
--- |
748 |
S11.4.1_A3.3_T6.js |
---
info: If the property doesn't have the DontDelete attribute, remove the property
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking declared variable
flags: [noStrict]
--- |
609 |
S11.4.1_A4.js |
---
info: |
"Delete" operator removes property, which is reference to the object, not
the object
esid: sec-delete-operator-runtime-semantics-evaluation
description: Checking two reference by one object
flags: [noStrict]
--- |
621 |
S11.4.1_A5-strict.js |
---
info: |
A strict delete should either succeed, returning true, or it
should fail by throwing a TypeError. Under no circumstances
should a strict delete return false.
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
See if a strict delete returns false when deleting a non-standard
property.
flags: [onlyStrict]
--- |
1057 |
shell.js |
|
0 |
super-property-method.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: Attempts to delete super reference property references throws ReferenceError exception
features: [class]
--- |
524 |
super-property-null-base.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: The restriction on the base of a super property must not be enforced before the delete expression is evaluated.
info: |
# 13.3.7.3 MakeSuperPropertyReference ( actualThis, propertyKey, strict )
1. Let env be GetThisEnvironment().
2. Assert: env.HasSuperBinding() is true.
3. Let baseValue be ? env.GetSuperBase().
4. Let bv be ? RequireObjectCoercible(baseValue).
# 13.5.1.2 Runtime Semantics: Evaluation
UnaryExpression : delete UnaryExpression
1. Let ref be the result of evaluating UnaryExpression.
2. ReturnIfAbrupt(ref).
[...]
5. If IsPropertyReference(ref) is true, then
a. Assert: ! IsPrivateReference(ref) is false.
b. If IsSuperReference(ref) is true, throw a ReferenceError exception.
features: [class]
--- |
1123 |
super-property-topropertykey.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
ToPropertyKey not performed when deleting a super reference.
info: |
13.5.1.2 Runtime Semantics: Evaluation
UnaryExpression : delete UnaryExpression
1. Let ref be ? Evaluation of UnaryExpression.
...
4. If IsPropertyReference(ref) is true, then
...
b. If IsSuperReference(ref) is true, throw a ReferenceError exception.
--- |
777 |
super-property-uninitialized-this.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: >
Element expression in delete super not evaluated when this is uninitialized.
info: |
13.5.1.2 Runtime Semantics: Evaluation
UnaryExpression : delete UnaryExpression
1. Let ref be ? Evaluation of UnaryExpression.
...
13.3.7.1 Runtime Semantics: Evaluation
SuperProperty : super [ Expression ]
...
2. Let actualThis be ? env.GetThisBinding().
3. Let propertyNameReference be ? Evaluation of Expression.
...
9.1.1.3.4 GetThisBinding ( )
...
2. If envRec.[[ThisBindingStatus]] is uninitialized, throw a ReferenceError exception.
...
--- |
1052 |
super-property.js |
---
esid: sec-delete-operator-runtime-semantics-evaluation
description: SuperReferences may not be deleted
info: |
[...]
5.If IsPropertyReference(ref) is true, then
a. If IsSuperReference(ref) is true, throw a ReferenceError exception.
features: [class]
--- |
567 |
white-space-line-terminator-between-delete-unaryexpression-allowed.js |
---
esid: sec-delete-operator
description: >
White Space and Line Terminator between "delete" and UnaryExpression are allowed
info: |
UnaryExpression :
delete UnaryExpression
--- |
1151 |