aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDavid Malcolm <dmalcolm@redhat.com>2024-07-31 20:38:40 -0400
committerDavid Malcolm <dmalcolm@redhat.com>2024-07-31 20:38:40 -0400
commitc990667996ff79cc5be6c898621811eeed4ad0a4 (patch)
tree8e4df68fe3a837039ea8dc2b27210ab9c4f83a80 /gcc
parentf829e627f40c95855df1c1b6a2903e360f37715b (diff)
downloadgcc-c990667996ff79cc5be6c898621811eeed4ad0a4.zip
gcc-c990667996ff79cc5be6c898621811eeed4ad0a4.tar.gz
gcc-c990667996ff79cc5be6c898621811eeed4ad0a4.tar.bz2
diagnostics: SARIF output: eliminate some uses of "line_table" global
No functional change intended. gcc/ChangeLog: * diagnostic-format-sarif.cc (sarif_builder::sarif_builder): Assert that m_line_maps is nonnull. (diagnostic_output_format_init_sarif_stderr): Add "line_maps" param and pass to format ctor. (diagnostic_output_format_init_sarif_file): Likewise. (diagnostic_output_format_init_sarif_stream): Likewise. * diagnostic.cc (diagnostic_output_format_init): Pass "line_table" as line_maps param to the above. * diagnostic.h (diagnostic_output_format_init_sarif_stderr): Add "line_maps" param. (diagnostic_output_format_init_sarif_file): Likewise. (diagnostic_output_format_init_sarif_stream): Likewise. Signed-off-by: David Malcolm <dmalcolm@redhat.com>
Diffstat (limited to 'gcc')
-rw-r--r--gcc/diagnostic-format-sarif.cc14
-rw-r--r--gcc/diagnostic.cc2
-rw-r--r--gcc/diagnostic.h3
3 files changed, 16 insertions, 3 deletions
diff --git a/gcc/diagnostic-format-sarif.cc b/gcc/diagnostic-format-sarif.cc
index 5900b9e..2232883 100644
--- a/gcc/diagnostic-format-sarif.cc
+++ b/gcc/diagnostic-format-sarif.cc
@@ -1302,6 +1302,8 @@ sarif_builder::sarif_builder (diagnostic_context &context,
m_tabstop (context.m_tabstop),
m_formatted (formatted)
{
+ gcc_assert (m_line_maps);
+
/* Mark MAIN_INPUT_FILENAME_ as the artifact that the tool was
instructed to scan.
Only quote the contents if it gets referenced by physical locations,
@@ -2988,13 +2990,15 @@ diagnostic_output_format_init_sarif (diagnostic_context &context)
void
diagnostic_output_format_init_sarif_stderr (diagnostic_context &context,
+ const line_maps *line_maps,
const char *main_input_filename_,
bool formatted)
{
+ gcc_assert (line_maps);
diagnostic_output_format_init_sarif (context);
context.set_output_format
(new sarif_stream_output_format (context,
- line_table,
+ line_maps,
main_input_filename_,
formatted,
stderr));
@@ -3005,14 +3009,16 @@ diagnostic_output_format_init_sarif_stderr (diagnostic_context &context,
void
diagnostic_output_format_init_sarif_file (diagnostic_context &context,
+ const line_maps *line_maps,
const char *main_input_filename_,
bool formatted,
const char *base_file_name)
{
+ gcc_assert (line_maps);
diagnostic_output_format_init_sarif (context);
context.set_output_format
(new sarif_file_output_format (context,
- line_table,
+ line_maps,
main_input_filename_,
formatted,
base_file_name));
@@ -3022,14 +3028,16 @@ diagnostic_output_format_init_sarif_file (diagnostic_context &context,
void
diagnostic_output_format_init_sarif_stream (diagnostic_context &context,
+ const line_maps *line_maps,
const char *main_input_filename_,
bool formatted,
FILE *stream)
{
+ gcc_assert (line_maps);
diagnostic_output_format_init_sarif (context);
context.set_output_format
(new sarif_stream_output_format (context,
- line_table,
+ line_maps,
main_input_filename_,
formatted,
stream));
diff --git a/gcc/diagnostic.cc b/gcc/diagnostic.cc
index 46cddfe..71d2f44 100644
--- a/gcc/diagnostic.cc
+++ b/gcc/diagnostic.cc
@@ -1857,12 +1857,14 @@ diagnostic_output_format_init (diagnostic_context &context,
case DIAGNOSTICS_OUTPUT_FORMAT_SARIF_STDERR:
diagnostic_output_format_init_sarif_stderr (context,
+ line_table,
main_input_filename_,
json_formatting);
break;
case DIAGNOSTICS_OUTPUT_FORMAT_SARIF_FILE:
diagnostic_output_format_init_sarif_file (context,
+ line_table,
main_input_filename_,
json_formatting,
base_file_name);
diff --git a/gcc/diagnostic.h b/gcc/diagnostic.h
index 36a4c23..79386cc 100644
--- a/gcc/diagnostic.h
+++ b/gcc/diagnostic.h
@@ -1115,13 +1115,16 @@ extern void diagnostic_output_format_init_json_file (diagnostic_context &context
bool formatted,
const char *base_file_name);
extern void diagnostic_output_format_init_sarif_stderr (diagnostic_context &context,
+ const line_maps *line_maps,
const char *main_input_filename_,
bool formatted);
extern void diagnostic_output_format_init_sarif_file (diagnostic_context &context,
+ const line_maps *line_maps,
const char *main_input_filename_,
bool formatted,
const char *base_file_name);
extern void diagnostic_output_format_init_sarif_stream (diagnostic_context &context,
+ const line_maps *line_maps,
const char *main_input_filename_,
bool formatted,
FILE *stream);