clang 17.0.0git
Public Member Functions | Friends | List of all members
clang::CFGLoopExit Class Reference

Represents the point where a loop ends. More...

#include "clang/Analysis/CFG.h"

Inheritance diagram for clang::CFGLoopExit:
Inheritance graph
Collaboration diagram for clang::CFGLoopExit:
Collaboration graph

Public Member Functions

 CFGLoopExit (const Stmt *stmt)
const StmtgetLoopStmt () const
- Public Member Functions inherited from clang::CFGElement
template<typename T >
castAs () const
 Convert to the specified CFGElement type, asserting that this CFGElement is of the desired type.
template<typename T >
std::optional< T > getAs () const
 Convert to the specified CFGElement type, returning std::nullopt if this CFGElement is not of the desired type.
Kind getKind () const
void dumpToStream (llvm::raw_ostream &OS) const
void dump () const


class CFGElement

Additional Inherited Members

- Public Types inherited from clang::CFGElement
enum  Kind {
  Initializer , ScopeBegin , ScopeEnd , NewAllocator ,
  LifetimeEnds , LoopExit , Statement , Constructor ,
  CXXRecordTypedCall , STMT_BEGIN = Statement , STMT_END = CXXRecordTypedCall , AutomaticObjectDtor ,
  DeleteDtor , BaseDtor , MemberDtor , TemporaryDtor ,
  DTOR_BEGIN = AutomaticObjectDtor , DTOR_END = TemporaryDtor
- Protected Member Functions inherited from clang::CFGElement
 CFGElement (Kind kind, const void *Ptr1, const void *Ptr2=nullptr)
 CFGElement ()=default
- Protected Attributes inherited from clang::CFGElement
llvm::PointerIntPair< void *, 2 > Data1
llvm::PointerIntPair< void *, 2 > Data2

Detailed Description

Represents the point where a loop ends.

This element is only produced when building the CFG for the static analyzer and hidden behind the 'cfg-loopexit' analyzer config flag.

Note: a loop exit element can be reached even when the loop body was never entered.

Definition at line 271 of file CFG.h.

Constructor & Destructor Documentation

◆ CFGLoopExit()

clang::CFGLoopExit::CFGLoopExit ( const Stmt stmt)

Definition at line 273 of file CFG.h.

Member Function Documentation

◆ getLoopStmt()

const Stmt * clang::CFGLoopExit::getLoopStmt ( ) const

Definition at line 275 of file CFG.h.

References clang::CFGElement::Data1.

Referenced by clang::ento::ExprEngine::processCFGElement().

Friends And Related Function Documentation

◆ CFGElement

friend class CFGElement

Definition at line 280 of file CFG.h.

The documentation for this class was generated from the following file: