CodeQL library for C/C++
Search

Class IRDynamicInitializationFlag

A variable generated to track whether a specific non-stack variable has been initialized. This is used to model the runtime initialization of static local variables in C++, as well as static fields in C#.

Import path

import semmle.code.cpp.ir.IR

Direct supertypes

Indirect supertypes

Fields

Inherited fields

Predicates

getBaseString

INTERNAL: Do not use.

getUniqueId

Gets an identifier string for the variable. This identifier is unique within the function.

getVariable

Gets variable whose initialization is guarded by this flag.

toString

Gets a textual representation of this element.

Inherited predicates

getAST

Gets the AST node that declared this variable, or that introduced this variable as part of the AST-to-IR translation.

from IRGeneratedVariable
getEnclosingFunction

Gets the function that references this variable.

from IRVariable
getEnclosingIRFunction

Gets the IR for the function that references this variable.

from IRVariable
getIRType

Gets the language-neutral type of the variable.

from IRVariable
getLanguageType

Gets the type of the variable.

from IRGeneratedVariable
getLocation

Gets the source location of this variable.

from IRVariable
getLocationString

INTERNAL: Do not use.

from IRGeneratedVariable
getType

Gets the type of the variable.

from IRVariable
isReadOnly

Holds if this variable’s value cannot be changed within a function. Currently used for string literals, but could also apply to const global and static variables.

from IRVariable

Charpred