oxc/crates
overlookmotel e48769a45d fix(transformer/logic-assignment-operator): always create IdentifierReferences with ReferenceId (#7745)
Use `TransformCtx::duplicate_expression` (introduced in #7754) to decide when to create temp vars for member expression object and computed property.

This fixes a bug where `IdentifierReference`s created when transforming `key` in `object[key] &&= value` were created without a `ReferenceId` (due to `clone_in`).

We didn't catch this before because Babel's test fixtures only cover `object[key++] &&= value` not the simpler `object[key] &&= value`. Add tests for this.
2024-12-10 02:28:26 +00:00
..
oxc release(crates): v0.39.0 (#7643) 2024-12-04 19:43:22 +08:00
oxc_allocator release(crates): v0.39.0 (#7643) 2024-12-04 19:43:22 +08:00
oxc_ast feat(parser)!: stage 3 import source and import defer (#7706) 2024-12-06 16:15:52 +00:00
oxc_ast_macros release(crates): v0.39.0 (#7643) 2024-12-04 19:43:22 +08:00
oxc_cfg release(crates): v0.39.0 (#7643) 2024-12-04 19:43:22 +08:00
oxc_codegen fix(codegen): print quote correctly for directive (#7735) 2024-12-09 07:17:02 +00:00
oxc_data_structures release(crates): v0.39.0 (#7643) 2024-12-04 19:43:22 +08:00
oxc_diagnostics feat(napi/transform,napi/parser): return structured error object (#7724) 2024-12-08 14:11:56 +00:00
oxc_ecmascript release(crates): v0.39.0 (#7643) 2024-12-04 19:43:22 +08:00
oxc_estree release(crates): v0.39.0 (#7643) 2024-12-04 19:43:22 +08:00
oxc_isolated_declarations refactor(isolated_declarations): use NONE in AST builder calls (#7752) 2024-12-09 16:36:27 +00:00
oxc_language_server refactor(linter): add capability of adding semantic data to module record (#7561) 2024-12-01 08:14:43 +00:00
oxc_linter feat(linter): support expectTypeOf, assert and assertType in vitest/expect-expect (#7742) 2024-12-09 22:07:25 +08:00
oxc_macros feat(linter): allow lint rules with the same name (#7496) 2024-11-27 04:25:05 +00:00
oxc_mangler release(crates): v0.39.0 (#7643) 2024-12-04 19:43:22 +08:00
oxc_minifier refactor(ast)!: change 'raw' from &str to Option<Atom> (#7547) 2024-12-05 00:34:45 +00:00
oxc_napi feat(napi/transform,napi/parser): return structured error object (#7724) 2024-12-08 14:11:56 +00:00
oxc_parser feat(parser)!: stage 3 import source and import defer (#7706) 2024-12-06 16:15:52 +00:00
oxc_prettier refactor(ast)!: change 'raw' from &str to Option<Atom> (#7547) 2024-12-05 00:34:45 +00:00
oxc_regular_expression release(crates): v0.39.0 (#7643) 2024-12-04 19:43:22 +08:00
oxc_semantic feat(semantic): add SymbolTable::symbol_is_mutated method (#7755) 2024-12-10 02:28:23 +00:00
oxc_span release(crates): v0.39.0 (#7643) 2024-12-04 19:43:22 +08:00
oxc_syntax refactor(linter): remove unused serde features (#7738) 2024-12-09 09:16:32 +00:00
oxc_transformer fix(transformer/logic-assignment-operator): always create IdentifierReferences with ReferenceId (#7745) 2024-12-10 02:28:26 +00:00
oxc_traverse feat(parser)!: stage 3 import source and import defer (#7706) 2024-12-06 16:15:52 +00:00
oxc_wasm refactor(linter): add capability of adding semantic data to module record (#7561) 2024-12-01 08:14:43 +00:00