Skip to content

False positive for unused_enumerated  #5881

@carl8382

Description

@carl8382

New Issue Checklist

Bug Description

There's a false positive for the rule unused_enumerated. The offset given from enumerated is used, just apparently not fast enough.

// This triggers a unused_enumerated  violation:
let previousValueComponent = "1234"
let currentValueComponent = "1434"

                // Compare previous and current components and find if there are any indexes where:
                // - two characters are digits
                // - these two digits are different
                //
                let firstIndexWithDifferentDigit = zip(previousValueComponent, currentValueComponent)
                    .enumerated()
                    .first {
                        $0.element.0.isNumber &&
                        $0.element.1.isNumber &&
                        $0.element.0 != $0.element.1
                    }?.offset

                return firstIndexWithDifferentDigit

Mention the command or other SwiftLint integration method that caused the issue. Include stack traces or command output.

$ swiftlint lint [--no-cache] [--fix]

Environment

  • SwiftLint version (run swiftlint version to be sure) 0.57.1
  • Xcode version (run xcodebuild -version to be sure) 16.0
  • Installation method used (Homebrew, CocoaPods, building from source, etc) SPM
  • Configuration file:
# insert yaml contents here

Are you using nested configurations? If so, paste their
relative paths and respective contents.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugUnexpected and reproducible misbehavior.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions