[gcc r14-3636] diagnostics: Delete config pointer before overwriting it
Mikael Morin
mikael@gcc.gnu.org
Sat Sep 2 11:00:43 GMT 2023
https://gcc.gnu.org/g:474473f0425b404cd3ce15e73844de4608ac4ba7
commit r14-3636-g474473f0425b404cd3ce15e73844de4608ac4ba7
Author: Mikael Morin <mikael@gcc.gnu.org>
Date: Sat Sep 2 12:55:25 2023 +0200
diagnostics: Delete config pointer before overwriting it
Delete m_client_data_hooks before it is reassigned in
tree_diagnostics_defaults. This fixes a small memory leak in the fortran
frontend, which restores the diagnostics configurations to their default
values with a call to tree_diagnostics_defaults at the end of the main parse
hook.
gcc/ChangeLog:
* tree-diagnostic.cc (tree_diagnostics_defaults): Delete allocated
pointer before overwriting it.
Diff:
---
gcc/tree-diagnostic.cc | 1 +
1 file changed, 1 insertion(+)
diff --git a/gcc/tree-diagnostic.cc b/gcc/tree-diagnostic.cc
index 731e3559cd81..d2f6637b6d95 100644
--- a/gcc/tree-diagnostic.cc
+++ b/gcc/tree-diagnostic.cc
@@ -377,5 +377,6 @@ tree_diagnostics_defaults (diagnostic_context *context)
context->print_path = default_tree_diagnostic_path_printer;
context->make_json_for_path = default_tree_make_json_for_path;
context->set_locations_cb = set_inlining_locations;
+ delete context->m_client_data_hooks;
context->m_client_data_hooks = make_compiler_data_hooks ();
}
More information about the Gcc-cvs
mailing list