← 返回首页
Variable used in its own initializer — CodeQL query help documentation CodeQL docs
CodeQL documentation
CodeQL resources

Variable used in its own initializer

ID: cpp/use-in-own-initializer Kind: problem Security severity: Severity: warning Precision: high Tags: - maintainability - correctness Query suites: - cpp-security-and-quality.qls

Click to see the query in the CodeQL repository

A variable is in scope in its own initializer, but it is undefined behavior to load from it before it is first assigned to.

Recommendation

Do not use a variable in its own initializer unless it is part of an address calculation or a sizeof expression.

Example

int f() { int x = x; // BAD: undefined behavior occurs here x = 0; return x; } int g() { int x = 0; // GOOD return x; }

References