Skip to content

A7-1-1: Ignore dummy base variable in recursive variable templates #621

Closed
@lcartey

Description

@lcartey

Affected rules

  • A7-1-1

Description

A recursive variable template definition can cause CodeQL to produce a dummy variable at the base case of the recursion.

Example

template <bool... Args> extern constexpr bool all_of_v = true; // COMPLIANT[FALSE_POSITIVE]

template <bool B1, bool... Args>
extern constexpr bool all_of_v<B1, Args...> = B1 &&all_of_v<Args...>;

void test() {
  all_of_v<true, true, true>;}

Metadata

Metadata

Assignees

Labels

Difficulty-LowA false positive or false negative report which is expected to take <1 day effort to addressImpact-LowPhase IIIStandard-AUTOSARfalse positive/false negativeAn issue related to observed false positives or false negatives.user-reportIssue reported by an end user of CodeQL Coding Standards

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions