oxc/tasks
overlookmotel 99635330c7 fix(transformer/arrow-functions): visit arguments to super() call (#8494)
Follow-on after #8482.

Fix an edge case in arrow functions transform when inserting `_this = this` after `super()`. It is possible (though bizarre) for `super()` to contain another `super()` call. This will throw an error when evaluating the outer `super()`, but it can still be observable in some cases.

```js
let f;
class S {}
class C extends S {
  constructor(x) {
    super(super(), this.x = x, f = async () => this);
  }
}

try { new C(123) } catch {}

const c = await f();
assert(c.x === 123);
```

So, before bailing out from searching for more `super()`s in class constructor, visit the `super()` call's arguments.
2025-01-15 02:07:05 +00:00
..
ast_tools feat(ast)!: remove unused and not useful ContentHash (#8483) 2025-01-14 09:53:27 +00:00
benchmark feat(tasks/benchmark): add mangler (#8470) 2025-01-14 10:08:13 +08:00
common chore(doc): replace main/master to tag/commit to make the url always accessible (#7298) 2024-11-16 21:00:30 +08:00
compat_data refactor(global): sort imports (#7883) 2024-12-14 15:07:21 +00:00
coverage chore(coverage): update runtime snapshots (#8489) 2025-01-14 22:06:10 +08:00
javascript_globals feat(linter)!: sync sindresorhus/globals; removed Object.prototype properties from builtin and es* globals (#6991) 2024-10-29 04:13:20 +00:00
lint_rules fix(tasks/lint_rules): sync unicorn rules with eslint rules (#8224) 2025-01-03 11:39:51 +08:00
minsize feat(minifier): minify var x; void x -> void 0 (#8466) 2025-01-13 16:07:59 +00:00
prettier_conformance refactor(prettier): Update tasks/prettier to correctly handle snapshots (#8337) 2025-01-08 17:10:30 +08:00
rulegen chore(deps): update dependency rust to v1.84.0 (#8391) 2025-01-09 18:11:17 +00:00
transform_checker perf(semantic): allocate UnresolvedReferences in allocator (#8046) 2024-12-20 15:18:16 +00:00
transform_conformance fix(transformer/arrow-functions): visit arguments to super() call (#8494) 2025-01-15 02:07:05 +00:00
website feat(oxlint): implement --init cli option (#8453) 2025-01-14 13:49:42 +08:00