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

Module Cached

Import path

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

Predicates

getIRRepresentationOfOperand

Holds if the underlying IR has a suitable instruction to represent a value that would otherwise need to be represented by a dedicated OperandNode value.

hasIRRepresentationOfIndirectInstruction

Holds if the underlying IR has a suitable instruction to represent a value that would otherwise need to be represented by a dedicated RawIndirectInstruction value.

hasIRRepresentationOfIndirectOperand

Holds if the underlying IR has a suitable operand to represent a value that would otherwise need to be represented by a dedicated RawIndirectOperand value.

isDef

Holds if address is an address of an SSA variable rooted at base, and instr is a definition of the SSA variable with ind number of indirections.

isIteratorDef

Holds if iteratorDerefAddress is an address of an iterator dereference (i.e., *it) that is used for a write operation that writes the value value to a container that created the iterator. container represents the base of the address of the container that was used to create the iterator.

isIteratorUse

Holds if iteratorAddress is an address of an iterator that is used for a read operation to read a value from a container that created the iterator. container represents the base of the address of the container that was used to create the iterator.

isUse

Holds if op is a use of an SSA variable rooted at base with ind number of indirections.