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::object > | to_json () const |
Data Fields | |
const exploded_node & | m_enode |
location_t | m_loc |
std::vector< const exploded_edge * > | m_eedge_vec |
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.
|
inline |
References ana::logger::end_log_line(), ana::logger::get_printer(), ana::logger::log_partial(), LOG_SCOPE, m_eedge_vec, m_enode, m_loc, and ana::logger::start_log_line().
Referenced by operator==().
|
inline |
References ana::exploded_node::get_supernode(), infinite_loop(), m_enode, and m_loc.
|
inline |
References m_eedge_vec, and m_enode.
std::vector<const exploded_edge *> infinite_loop::m_eedge_vec |
Referenced by infinite_loop(), and to_json().
const exploded_node& infinite_loop::m_enode |
Referenced by infinite_loop(), operator==(), and to_json().
location_t infinite_loop::m_loc |
Referenced by infinite_loop(), and operator==().