aboutsummaryrefslogtreecommitdiff
path: root/gcc/diagnostics/output-spec.cc
diff options
context:
space:
mode:
authorJerry DeLisle <jvdelisle@gcc.gnu.org>2025-09-02 15:58:26 -0700
committerJerry DeLisle <jvdelisle@gcc.gnu.org>2025-09-02 15:58:26 -0700
commit071b4126c613881f4cb25b4e5c39032964827f88 (patch)
tree7ed805786566918630d1d617b1ed8f7310f5fd8e /gcc/diagnostics/output-spec.cc
parent845d23f3ea08ba873197c275a8857eee7edad996 (diff)
parentcaa1c2f42691d68af4d894a5c3e700ecd2dba080 (diff)
downloadgcc-devel/gfortran-test.zip
gcc-devel/gfortran-test.tar.gz
gcc-devel/gfortran-test.tar.bz2
Merge branch 'master' into gfortran-testdevel/gfortran-test
Diffstat (limited to 'gcc/diagnostics/output-spec.cc')
-rw-r--r--gcc/diagnostics/output-spec.cc70
1 files changed, 22 insertions, 48 deletions
diff --git a/gcc/diagnostics/output-spec.cc b/gcc/diagnostics/output-spec.cc
index 08128a9..e25d25a 100644
--- a/gcc/diagnostics/output-spec.cc
+++ b/gcc/diagnostics/output-spec.cc
@@ -182,10 +182,6 @@ public:
const scheme_name_and_params &parsed_arg) const final override;
private:
- static sarif_generation_options
- make_sarif_gen_opts (enum sarif_version version,
- bool state_graph);
-
static std::unique_ptr<sarif_serialization_format>
make_sarif_serialization_object (enum sarif_serialization_kind);
};
@@ -368,7 +364,7 @@ text_scheme_handler::make_sink (const context &ctxt,
const scheme_name_and_params &parsed_arg) const
{
bool show_color = pp_show_color (dc.get_reference_printer ());
- bool show_nesting = false;
+ bool show_nesting = true;
bool show_locations_in_nesting = true;
bool show_levels = false;
for (auto& iter : parsed_arg.m_kvs)
@@ -381,21 +377,21 @@ text_scheme_handler::make_sink (const context &ctxt,
return nullptr;
continue;
}
- if (key == "experimental-nesting")
+ if (key == "show-nesting")
{
if (!parse_bool_value (ctxt, unparsed_arg, key, value,
show_nesting))
return nullptr;
continue;
}
- if (key == "experimental-nesting-show-locations")
+ if (key == "show-nesting-locations")
{
if (!parse_bool_value (ctxt, unparsed_arg, key, value,
show_locations_in_nesting))
return nullptr;
continue;
}
- if (key == "experimental-nesting-show-levels")
+ if (key == "show-nesting-levels")
{
if (!parse_bool_value (ctxt, unparsed_arg, key, value, show_levels))
return nullptr;
@@ -405,9 +401,9 @@ text_scheme_handler::make_sink (const context &ctxt,
/* Key not found. */
auto_vec<const char *> known_keys;
known_keys.safe_push ("color");
- known_keys.safe_push ("experimental-nesting");
- known_keys.safe_push ("experimental-nesting-show-locations");
- known_keys.safe_push ("experimental-nesting-show-levels");
+ known_keys.safe_push ("show-nesting");
+ known_keys.safe_push ("show-nesting-locations");
+ known_keys.safe_push ("show-nesting-levels");
ctxt.report_unknown_key (unparsed_arg, key, get_scheme_name (),
known_keys);
return nullptr;
@@ -431,8 +427,7 @@ sarif_scheme_handler::make_sink (const context &ctxt,
label_text filename;
enum sarif_serialization_kind serialization_kind
= sarif_serialization_kind::json;
- enum sarif_version version = sarif_version::v2_1_0;
- bool state_graph = false;
+ sarif_generation_options sarif_gen_opts;
for (auto& iter : parsed_arg.m_kvs)
{
const std::string &key = iter.first;
@@ -463,17 +458,18 @@ sarif_scheme_handler::make_sink (const context &ctxt,
{{{"2.1", sarif_version::v2_1_0},
{"2.2-prerelease", sarif_version::v2_2_prerelease_2024_08_08}}};
- if (!parse_enum_value<enum sarif_version> (ctxt, unparsed_arg,
- key, value,
- value_names,
- version))
+ if (!parse_enum_value<enum sarif_version>
+ (ctxt, unparsed_arg,
+ key, value,
+ value_names,
+ sarif_gen_opts.m_version))
return nullptr;
continue;
}
if (key == "state-graphs")
{
if (!parse_bool_value (ctxt, unparsed_arg, key, value,
- state_graph))
+ sarif_gen_opts.m_state_graph))
return nullptr;
continue;
}
@@ -513,8 +509,6 @@ sarif_scheme_handler::make_sink (const context &ctxt,
if (!output_file_)
return nullptr;
- auto sarif_gen_opts = make_sarif_gen_opts (version, state_graph);
-
auto serialization_obj = make_sarif_serialization_object (serialization_kind);
auto sink = make_sarif_sink (dc,
@@ -525,16 +519,6 @@ sarif_scheme_handler::make_sink (const context &ctxt,
return sink;
}
-sarif_generation_options
-sarif_scheme_handler::make_sarif_gen_opts (enum sarif_version version,
- bool state_graph)
-{
- sarif_generation_options sarif_gen_opts;
- sarif_gen_opts.m_version = version;
- sarif_gen_opts.m_state_graph = state_graph;
- return sarif_gen_opts;
-}
-
std::unique_ptr<sarif_serialization_format>
sarif_scheme_handler::
make_sarif_serialization_object (enum sarif_serialization_kind kind)
@@ -557,12 +541,8 @@ html_scheme_handler::make_sink (const context &ctxt,
const char *unparsed_arg,
const scheme_name_and_params &parsed_arg) const
{
- bool css = true;
label_text filename;
- bool javascript = true;
- bool show_state_diagrams = false;
- bool show_state_diagrams_sarif = false;
- bool show_state_diagrams_dot_src = false;
+ html_generation_options html_gen_opts;
for (auto& iter : parsed_arg.m_kvs)
{
const std::string &key = iter.first;
@@ -570,7 +550,7 @@ html_scheme_handler::make_sink (const context &ctxt,
if (key == "css")
{
if (!parse_bool_value (ctxt, unparsed_arg, key, value,
- css))
+ html_gen_opts.m_css))
return nullptr;
continue;
}
@@ -582,28 +562,28 @@ html_scheme_handler::make_sink (const context &ctxt,
if (key == "javascript")
{
if (!parse_bool_value (ctxt, unparsed_arg, key, value,
- javascript))
+ html_gen_opts.m_javascript))
return nullptr;
continue;
}
if (key == "show-state-diagrams")
{
if (!parse_bool_value (ctxt, unparsed_arg, key, value,
- show_state_diagrams))
+ html_gen_opts.m_show_state_diagrams))
return nullptr;
continue;
}
if (key == "show-state-diagrams-dot-src")
{
if (!parse_bool_value (ctxt, unparsed_arg, key, value,
- show_state_diagrams_dot_src))
+ html_gen_opts.m_show_state_diagrams_dot_src))
return nullptr;
continue;
}
if (key == "show-state-diagrams-sarif")
{
if (!parse_bool_value (ctxt, unparsed_arg, key, value,
- show_state_diagrams_sarif))
+ html_gen_opts.m_show_state_diagrams_sarif))
return nullptr;
continue;
}
@@ -645,13 +625,6 @@ html_scheme_handler::make_sink (const context &ctxt,
if (!output_file_)
return nullptr;
- html_generation_options html_gen_opts;
- html_gen_opts.m_css = css;
- html_gen_opts.m_javascript = javascript;
- html_gen_opts.m_show_state_diagrams = show_state_diagrams;
- html_gen_opts.m_show_state_diagrams_sarif = show_state_diagrams_sarif;
- html_gen_opts.m_show_state_diagrams_dot_src = show_state_diagrams_dot_src;
-
auto sink = make_html_sink (dc,
*ctxt.get_affected_location_mgr (),
html_gen_opts,
@@ -846,6 +819,7 @@ output_spec_cc_tests ()
}
} // namespace diagnostics::selftest
-} // namespace diagnostics
#endif /* #if CHECKING_P */
+
+} // namespace diagnostics