Skip to content

Concerning compilation warning in string_search.h #37145

Closed
@targos

Description

@targos

On Windows with MSVC, the implementation of StringSearch<Char>::BoyerMooreHorspoolSearch emits a concerning warning.

Code:

node/src/string_search.h

Lines 459 to 461 in fd02dac

const size_t pattern_length = pattern_.length();
int* char_occurrences = bad_char_shift_table_;
int64_t badness = -pattern_length;

The emitted warning is C4146: unary minus operator applied to unsigned type, result still unsigned

This looks like it introduces a bug in the function, at least on Windows, because badness is never going to be a negative number.

Metadata

Metadata

Assignees

No one assigned

    Labels

    c++Issues and PRs that require attention from people who are familiar with C++.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions