Skip to content

linter: no-unused-vars #10458

@musicq

Description

@musicq

What version of Oxlint are you using?

0.16.6

What command did you run?

oxlint

What does your .oxlintrc.json config file look like?

{
  "rules": {
    "no-unused-vars": 2
  }
}

What happened?

It reports unused vars wrongly in this code.

Reproduce link
https://playground.oxc.rs/#eNpVkMFOwzAMhl/FygmkHgCJS2G7gHYFjSPj4KbeFJbalZMMqqrvTrqsk7gksf37++2MxpraWOEQQfjFO3uE1Y4BbuYD4IQ+UQ0hquNDVXJHGv5lbmG1hrHULqTmu4YtWdH2+SK8NKxhBeP0VMQ3WfeZaV+AAZCHDCqG5/q04x2byoipR6OJ5ysMHPHX1FETVcY7jss7WOnpGgxdI36JoiKHvWhn6j36QFNletRAOhPRe/nZUkzKbykG19ImsY1Osl9p75Wy9kTvqMShZDNiNj8j8vvqUJgR9UB5MkPh4e7+Me/ggniM1L6S9ag44zNpmcZKSwc6L0iMjacPSWqpw/7q1jl2e7f45V+OKn6TR5+bTqSNhLx9AU7TH6TJotA=

❌
const onClick =
  (
    value: string,
    key: string,
//  ^ reports key as unused
  ) => {
    const obj: Record<string, string> = {};
//        ^ reports obj as unused
    (obj[key] as any) = value;
  }

Seems like caused by as any. Below works fine.

✅
const onClick =
  (
    value: string,
    key: string,
  ) => {
    const obj: Record<string, string> = {};
    obj[key] = value;
  }

Metadata

Metadata

Assignees

Labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions