diff --git a/crates/oxc_linter/src/rules/eslint/no_unused_vars/tests/oxc.rs b/crates/oxc_linter/src/rules/eslint/no_unused_vars/tests/oxc.rs index f9b35bed1baed..2f0038910d1d2 100644 --- a/crates/oxc_linter/src/rules/eslint/no_unused_vars/tests/oxc.rs +++ b/crates/oxc_linter/src/rules/eslint/no_unused_vars/tests/oxc.rs @@ -277,6 +277,13 @@ fn test_vars_discarded_reads() { return (yield fn(), 1); } }", + // https://github.com/oxc-project/oxc/issues/12592 + "export const Foo = ({ onDismiss }) => { + const { remove } = useToaster(); + return ( + + ); + };", ]; let fail = vec![ diff --git a/crates/oxc_linter/src/rules/eslint/no_unused_vars/usage.rs b/crates/oxc_linter/src/rules/eslint/no_unused_vars/usage.rs index 9645f039b482d..6ed8db457b5c8 100644 --- a/crates/oxc_linter/src/rules/eslint/no_unused_vars/usage.rs +++ b/crates/oxc_linter/src/rules/eslint/no_unused_vars/usage.rs @@ -651,6 +651,7 @@ impl<'a> Symbol<'_, 'a> { AstKind::CallExpression(_) | AstKind::AwaitExpression(_) | AstKind::YieldExpression(_) + | AstKind::ChainExpression(_) ) { continue; }