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 AbstractIRGeneratedVariable |
getEnclosingFunction | Gets the function that references this variable. | from AbstractIRVariable |
getEnclosingIRFunction | Gets the IR for the function that references this variable. | from AbstractIRVariable |
getIRType | Gets the language-neutral type of the variable. | from AbstractIRVariable |
getLanguageType | Gets the type of the variable. | from AbstractIRGeneratedVariable |
getLocation | Gets the source location of this variable. | from AbstractIRVariable |
getLocationString | INTERNAL: Do not use. | from AbstractIRGeneratedVariable |
getType | Gets the type of the variable. | from AbstractIRVariable |
isReadOnly | Holds if this variable’s value cannot be changed within a function. Currently used for string literals, but could also apply to | from AbstractIRVariable |