@@ -62,6 +62,7 @@ along with GCC; see the file COPYING3. If not see
#include "make-unique.h"
#include "analyzer/checker-path.h"
#include "analyzer/feasible-graph.h"
+#include "diagnostic-format-sarif.h"
/* A subclass of pending_diagnostic for complaining about suspected
infinite recursion. */
@@ -236,6 +237,18 @@ public:
return false;
}
+ void maybe_add_sarif_properties (sarif_object &result_obj)
+ const final override
+ {
+ sarif_property_bag &props = result_obj.get_or_create_properties ();
+#define PROPERTY_PREFIX "gcc/analyzer/infinite_recursion_diagnostic/"
+ props.set_integer (PROPERTY_PREFIX "prev_entry_enode",
+ m_prev_entry_enode->m_index);
+ props.set_integer (PROPERTY_PREFIX "new_entry_enode",
+ m_new_entry_enode->m_index);
+#undef PROPERTY_PREFIX
+ }
+
private:
/* Return true iff control flow along FEDGE was affected by
a conjured_svalue. */
Tested lightly by hand. Successfully bootstrapped & regrtested on x86_64-pc-linux-gnu. Successful run of analyzer integration tests on x86_64-pc-linux-gnu. Pushed to trunk as r14-9900-g960e07d73a5295. gcc/analyzer/ChangeLog: * infinite-recursion.cc: Include "diagnostic-format-sarif.h". (infinite_recursion_diagnostic::maybe_add_sarif_properties): New. Signed-off-by: David Malcolm <dmalcolm@redhat.com> --- gcc/analyzer/infinite-recursion.cc | 13 +++++++++++++ 1 file changed, 13 insertions(+)