Skip to content

LGTM.com - c++ false positive "Expression has no effect" #5125

@flamewing

Description

@flamewing

LGTM is reporting a false-positive "Expression has no effect" warning. The expression LGTM is highlighting is this:

    add_global(varName);

The definition of add_global follows right after the constructor:

static auto add_global(std::string var) -> bool {
    return variables.insert(std::move(var)).second;
}

The variables variable is a static class variable which is being mutated by this function, which is most definitely an observable side-effect (which is, indeed, observed on parse.yy). There is no other add_global function accessible on this point, and no other variables variable accessible.

Here is the link to the alert page.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions