This patch adds a new debugging function.
gcc/ChangeLog:
* analyzer/checker-path.cc (checker_path::debug): New member
function.
* analyzer/checker-path.h (checker_path::debug): New decl.
---
gcc/analyzer/checker-path.cc | 19 +++++++++++++++++++
gcc/analyzer/checker-path.h | 2 +-
2 files changed, 20 insertions(+), 1 deletion(-)
diff --git a/gcc/analyzer/checker-path.cc b/gcc/analyzer/checker-path.cc
index 5302504..0a18406 100644
--- a/gcc/analyzer/checker-path.cc
+++ b/gcc/analyzer/checker-path.cc
@@ -883,6 +883,25 @@ checker_path::maybe_log (logger *logger, const char *desc)
const
}
}
+/* Print a multiline form of this path to STDERR. */
+
+DEBUG_FUNCTION void
+checker_path::debug () const
+{
+ checker_event *e;
+ int i;
+ FOR_EACH_VEC_ELT (m_events, i, e)
+ {
+ label_text event_desc (e->get_desc (false));
+ fprintf (stderr,
+ "[%i]: %s \"%s\"\n",
+ i,
+ event_kind_to_string (m_events[i]->m_kind),
+ event_desc.m_buffer);
+ event_desc.maybe_free ();
+ }
+}
+
/* Add a warning_event to the end of this path. */
void
diff --git a/gcc/analyzer/checker-path.h b/gcc/analyzer/checker-path.h
index f042f47..916e5a7 100644
--- a/gcc/analyzer/checker-path.h
+++ b/gcc/analyzer/checker-path.h
@@ -499,8 +499,8 @@ public:
return *m_events[idx];
}
-
void dump (pretty_printer *pp) const;
+ void debug () const;
void maybe_log (logger *logger, const char *desc) const;
--
1.8.5.3