CodeQL library for C/C++
codeql/cpp-all 8.0.0 (changelog, source)
Search

Class GlobalDef

Import path

import semmle.code.cpp.ir.dataflow.internal.SsaImpl

Direct supertypes

Indirect supertypes

Fields

Predicates

getVariable

Gets the global (or static local) variable written to by this SSA definition.

Inherited predicates

definesAt

Holds if this SSA definition defines v at index i in basic block bb. Phi nodes are considered to be at index -1, while normal variable writes are at the index of the control flow node they wrap.

from Definition
getAUse

Gets an Operand that represents a use of this definition.

from Definition
getAnIndirectUse

Gets an Operand that represents an indirect use of this definition.

from Definition
getAnUltimateDefinition

Gets a definition that ultimately defines this SSA definition and is not itself a phi node.

from Definition
getBasicBlock

Gets the basic block to which this SSA definition belongs.

from Definition
getFunction

Gets the enclosing declaration of this definition.

from Definition
getIndirection

Gets the indirection of this definition.

from Definition
getIndirectionIndex

Gets the indirection index of this definition.

from Definition
getLocation

Gets the location of this SSA definition.

from Definition
getSourceVariable

Gets the source variable underlying this SSA definition.

from Definition
getUnderlyingType

Gets the underlying type of the variable being defined by this definition.

from Definition
getUnspecifiedType

Gets the unspecified type of the variable being defined by this definition.

from Definition
getValue

INTERNAL: Do not use.

from Definition
isCertain

Holds if this definition is guaranteed to totally overwrite the buffer being written to.

from Definition
isIndirectParameterDefinition

Holds if this definition defines the indirectionIndex’th indirection of parameter p upon entry into the enclosing function.

from Definition
isIndirectThisDefinition

Holds if this definition defines the implicit *this parameter (i.e., the indirection of the this parameter) upon entry into the enclosing member function.

from Definition
isLiveAtEndOfBlock

Holds if this SSA definition is live at the end of basic block bb. That is, this definition reaches the end of basic block bb, at which point it is still live, without crossing another SSA definition of the same source variable.

from Definition
isParameterDefinition

Holds if this definition defines the parameter p upon entry into the enclosing function.

from Definition
isThisDefinition

Holds if this definition defines the implicit this parameter upon entry into the enclosing member function.

from Definition
toString

Gets a textual representation of this SSA definition.

from Definition

Charpred