GCC Middle and Back End API Reference
infinite_loop Struct Reference
Collaboration diagram for infinite_loop:

Public Member Functions

 infinite_loop (const exploded_node &enode, location_t loc, std::vector< const exploded_edge * > &&eedges, logger *logger)
 
bool operator== (const infinite_loop &other) const
 
std::unique_ptr< json::objectto_json () const
 

Data Fields

const exploded_nodem_enode
 
location_t m_loc
 
std::vector< const exploded_edge * > m_eedge_vec
 

Detailed Description

Detection of infinite loops. Copyright (C) 2022-2025 Free Software Foundation, Inc. Contributed by David Malcolm <dmalcolm@redhat.com>. This file is part of GCC. GCC is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GCC; see the file COPYING3. If not see <http://www.gnu.org/licenses/>.
A bundle of data characterizing a particular infinite loop identified within the exploded graph.

Constructor & Destructor Documentation

◆ infinite_loop()

infinite_loop::infinite_loop ( const exploded_node & enode,
location_t loc,
std::vector< const exploded_edge * > && eedges,
logger * logger )
inline

Member Function Documentation

◆ operator==()

bool infinite_loop::operator== ( const infinite_loop & other) const
inline

◆ to_json()

std::unique_ptr< json::object > infinite_loop::to_json ( ) const
inline

References m_eedge_vec, and m_enode.

Field Documentation

◆ m_eedge_vec

std::vector<const exploded_edge *> infinite_loop::m_eedge_vec

Referenced by infinite_loop(), and to_json().

◆ m_enode

const exploded_node& infinite_loop::m_enode

Referenced by infinite_loop(), operator==(), and to_json().

◆ m_loc

location_t infinite_loop::m_loc

Referenced by infinite_loop(), and operator==().


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