21#ifndef GCC_DIAGNOSTIC_PATH_H
22#define GCC_DIAGNOSTIC_PATH_H
221 return label_text::borrow (
m_desc);
262 return label_text::borrow (
m_name);
286 const char *
fmt, ...)
291 const char *
fmt, ...)
Definition diagnostic-event-id.h:37
Definition diagnostic-path.h:70
noun
Definition diagnostic-path.h:89
@ NOUN_resource
Definition diagnostic-path.h:97
@ NOUN_taint
Definition diagnostic-path.h:92
@ NOUN_function
Definition diagnostic-path.h:94
@ NOUN_lock
Definition diagnostic-path.h:95
@ NOUN_unknown
Definition diagnostic-path.h:90
@ NOUN_memory
Definition diagnostic-path.h:96
@ NOUN_sensitive
Definition diagnostic-path.h:93
virtual ~diagnostic_event()
Definition diagnostic-path.h:141
virtual void maybe_add_sarif_properties(sarif_object &) const
Definition diagnostic-path.h:168
virtual tree get_fndecl() const =0
verb
Definition diagnostic-path.h:75
@ VERB_danger
Definition diagnostic-path.h:86
@ VERB_return
Definition diagnostic-path.h:83
@ VERB_branch
Definition diagnostic-path.h:84
@ VERB_acquire
Definition diagnostic-path.h:78
@ VERB_call
Definition diagnostic-path.h:82
@ VERB_enter
Definition diagnostic-path.h:80
@ VERB_release
Definition diagnostic-path.h:79
@ VERB_unknown
Definition diagnostic-path.h:76
@ VERB_exit
Definition diagnostic-path.h:81
virtual const logical_location * get_logical_location() const =0
virtual int get_stack_depth() const =0
virtual location_t get_location() const =0
virtual bool connect_to_next_event_p() const =0
virtual meaning get_meaning() const =0
virtual diagnostic_thread_id_t get_thread_id() const =0
virtual label_text get_desc(bool can_colorize) const =0
property
Definition diagnostic-path.h:100
@ PROPERTY_unknown
Definition diagnostic-path.h:101
@ PROPERTY_false
Definition diagnostic-path.h:104
@ PROPERTY_true
Definition diagnostic-path.h:103
Definition diagnostic-path.h:188
virtual const diagnostic_event & get_event(int idx) const =0
bool multithreaded_p() const
virtual unsigned num_events() const =0
virtual unsigned num_threads() const =0
virtual ~diagnostic_path()
Definition diagnostic-path.h:190
bool interprocedural_p() const
Definition diagnostic.cc:1057
virtual const diagnostic_thread & get_thread(diagnostic_thread_id_t) const =0
bool get_first_event_in_a_function(unsigned *out_idx) const
Definition diagnostic.cc:1038
Definition diagnostic-path.h:179
virtual ~diagnostic_thread()
Definition diagnostic-path.h:181
virtual label_text get_name(bool can_colorize) const =0
Definition logical-location.h:52
Definition pretty-print.h:244
Definition diagnostic-format-sarif.h:42
Definition diagnostic-path.h:209
bool connect_to_next_event_p() const final override
Definition diagnostic-path.h:231
const logical_location * get_logical_location() const final override
Definition diagnostic-path.h:223
bool m_connected_to_next_event
Definition diagnostic-path.h:250
meaning get_meaning() const final override
Definition diagnostic-path.h:227
tree get_fndecl() const final override
Definition diagnostic-path.h:217
location_t get_location() const final override
Definition diagnostic-path.h:216
~simple_diagnostic_event()
Definition diagnostic.cc:2659
int m_depth
Definition diagnostic-path.h:248
tree m_fndecl
Definition diagnostic-path.h:247
simple_diagnostic_event(location_t loc, tree fndecl, int depth, const char *desc, diagnostic_thread_id_t thread_id=0)
Definition diagnostic.cc:2646
location_t m_loc
Definition diagnostic-path.h:246
void connect_to_next_event()
Definition diagnostic-path.h:240
diagnostic_thread_id_t get_thread_id() const final override
Definition diagnostic-path.h:235
char * m_desc
Definition diagnostic-path.h:249
label_text get_desc(bool) const final override
Definition diagnostic-path.h:219
diagnostic_thread_id_t m_thread_id
Definition diagnostic-path.h:251
int get_stack_depth() const final override
Definition diagnostic-path.h:218
Definition diagnostic-path.h:273
pretty_printer * m_event_pp
Definition diagnostic-path.h:301
const diagnostic_event & get_event(int idx) const final override
Definition diagnostic.cc:2538
diagnostic_event_id_t add_event(location_t loc, tree fndecl, int depth, const char *fmt,...) ATTRIBUTE_GCC_DIAG(5
Definition diagnostic.cc:2571
auto_delete_vec< simple_diagnostic_event > m_events
Definition diagnostic-path.h:298
unsigned num_events() const final override
Definition diagnostic.cc:2529
diagnostic_event_id_t diagnostic_event_id_t add_thread_event(diagnostic_thread_id_t thread_id, location_t loc, tree fndecl, int depth, const char *fmt,...) ATTRIBUTE_GCC_DIAG(6
Definition diagnostic.cc:2599
auto_delete_vec< simple_diagnostic_thread > m_threads
Definition diagnostic-path.h:297
diagnostic_thread_id_t add_thread(const char *name)
Definition diagnostic.cc:2556
simple_diagnostic_path(pretty_printer *event_pp)
Definition diagnostic.cc:2519
const diagnostic_thread & get_thread(diagnostic_thread_id_t) const final override
Definition diagnostic.cc:2550
unsigned num_threads() const final override
Definition diagnostic.cc:2544
diagnostic_event_id_t diagnostic_event_id_t void connect_to_next_event()
Definition diagnostic.cc:2635
Definition diagnostic-path.h:257
const char * m_name
Definition diagnostic-path.h:266
simple_diagnostic_thread(const char *name)
Definition diagnostic-path.h:259
label_text get_name(bool) const final override
Definition diagnostic-path.h:260
bool debug
Definition collect-utils.cc:34
union tree_node * tree
Definition coretypes.h:97
#define ATTRIBUTE_GCC_DIAG(m, n)
Definition diagnostic-core.h:67
unsigned diagnostic_thread_id_t
Definition diagnostic-event-id.h:64
void final(rtx_insn *first, FILE *file, int optimize_p)
Definition final.cc:2002
T * ggc_alloc(ALONE_CXX_MEM_STAT_INFO)
Definition ggc.h:184
Definition diagnostic-path.h:114
static const char * maybe_get_noun_str(enum noun)
Definition diagnostic.cc:987
meaning()
Definition diagnostic-path.h:115
static const char * maybe_get_property_str(enum property)
Definition diagnostic.cc:1014
meaning(enum verb verb, enum property property)
Definition diagnostic-path.h:125
enum verb m_verb
Definition diagnostic-path.h:136
void dump_to_pp(pretty_printer *pp) const
Definition diagnostic.cc:926
enum property m_property
Definition diagnostic-path.h:138
enum noun m_noun
Definition diagnostic-path.h:137
static const char * maybe_get_verb_str(enum verb)
Definition diagnostic.cc:956
meaning(enum verb verb, enum noun noun)
Definition diagnostic-path.h:121
#define NULL
Definition system.h:50