GCC Middle and Back End API Reference
tree-diagnostic-path.cc File Reference
#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "tree.h"
#include "diagnostic.h"
#include "tree-pretty-print.h"
#include "gimple-pretty-print.h"
#include "tree-diagnostic.h"
#include "langhooks.h"
#include "intl.h"
#include "diagnostic-path.h"
#include "json.h"
#include "gcc-rich-location.h"
#include "diagnostic-color.h"
#include "diagnostic-event-id.h"
#include "diagnostic-label-effects.h"
#include "selftest.h"
#include "selftest-diagnostic.h"
#include "text-art/theme.h"
Include dependency graph for tree-diagnostic-path.cc:

Macros

#define INCLUDE_ALGORITHM
 
#define INCLUDE_MEMORY
 
#define INCLUDE_STRING
 
#define INCLUDE_VECTOR
 

Functions

void default_tree_diagnostic_path_printer (diagnostic_context *context, const diagnostic_path *path)
 
json::valuedefault_tree_make_json_for_path (diagnostic_context *context, const diagnostic_path *path)
 

Macro Definition Documentation

◆ INCLUDE_ALGORITHM

#define INCLUDE_ALGORITHM
Paths through the code associated with a diagnostic.
   Copyright (C) 2019-2024 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/>.   

◆ INCLUDE_MEMORY

#define INCLUDE_MEMORY

◆ INCLUDE_STRING

#define INCLUDE_STRING

◆ INCLUDE_VECTOR

#define INCLUDE_VECTOR

Function Documentation

◆ default_tree_diagnostic_path_printer()

◆ default_tree_make_json_for_path()

json::value * default_tree_make_json_for_path ( diagnostic_context * context,
const diagnostic_path * path )
This has to be here, rather than diagnostic-format-json.cc,
since diagnostic-format-json.o is within OBJS-libcommon and thus
doesn't have access to trees (for m_fndecl).   

References lang_hooks::decl_printable_name, ggc_alloc(), i, identifier_to_locale(), and json_from_expanded_location().

Referenced by tree_diagnostics_defaults().