ladybird/Userland/Libraries/LibJS/Tests
Andreas Kling 0255c8d976 Only apply auto-naming of function expressions based on syntax
The auto naming of function expressions is a purely syntactic
decision, so shouldn't be decided based on the dynamic type of
an assignment. This moves the decision making into the parser.

One icky hack is that we add a field to FunctionExpression to
indicate whether we can autoname. The real solution is to actually
generate a CompoundExpression node so that the parser can make
the correct decision, however this would have a potentially
significant run time cost.

This does not correct the behaviour for class expressions.

Patch from Anonymous.
2021-03-22 12:44:07 +01:00
..
builtins LibJS: Don't punish large arrays with generic indexed property storage 2021-03-21 11:37:10 +01:00
classes
functions Only apply auto-naming of function expressions based on syntax 2021-03-22 12:44:07 +01:00
iterators
loops
operators LibJS: Improve correctness of rounding and bitwise operations 2021-02-05 09:38:45 +01:00
add-values-to-primitive.js
arguments-callee.js LibJS: Add a basic test for arguments.callee 2021-03-17 21:54:52 +01:00
arguments-object.js
automatic-semicolon-insertion.js
break-continue-syntax-errors.js
comments-basic.js
computed-property-throws.js
const-declaration-missing-initializer.js
const-reassignment.js LibJS: Re-enable "reassignment to const" test 2021-02-26 16:59:37 +01:00
custom-@@hasInstance.js
custom-@@toPrimitive.js LibJS: Support @@toPrimitive in ToPrimitive abstract operation 2021-03-03 11:04:06 +01:00
custom-@@toStringTag.js
debugger-statement.js
empty-statements.js
eval-basic.js LibJS: Actually use eval() in non-string arg eval test 2021-03-17 21:28:14 +01:00
exception-in-catch-block.js
exception-ReferenceError.js
exponentiation-basic.js
if-statement-function-declaration.js
indexed-access-string-object.js
invalid-lhs-in-assignment.js
labels.js
let-scoping.js
new-expression.js
numeric-literals-basic.js
object-basic.js
object-expression-computed-property.js
object-getter-setter-shorthand.js
object-method-shorthand.js
object-spread.js
ordinary-to-primitive.js
parseInt.js
parser-declaration-in-single-statement-context.js
parser-line-terminators.js
parser-unary-associativity.js
program-strict-mode.js
return.js
runtime-error-call-stack-size.js
strict-mode-blocks.js
strict-mode-errors.js
string-escapes.js
string-spread.js
switch-basic.js
switch-break.js
tagged-template-literals.js
template-literals.js
test-common-tests.js
test-common.js
throw-basic.js
to-number-basic.js
to-number-exception.js
try-catch-finally-nested.js
try-catch-finally.js
update-expression-on-member-expression.js
update-expressions-basic.js
use-strict-directive.js
var-multiple-declarator.js
var-scoping.js
variable-undefined.js
with-basic.js