The optimize pragma/attribute parsing calls decode_cmdline_options_to_array but doesn't free the array. The following fixes that.
Bootstrapped and tested on x86_64-unknown-linux-gnu, OK? Thanks, Richard. 2021-02-10 Richard Biener <rguent...@suse.de> gcc/c-family/ * c-common.c (parse_optimize_options): Free decoded_options. --- gcc/c-family/c-common.c | 1 + 1 file changed, 1 insertion(+) diff --git a/gcc/c-family/c-common.c b/gcc/c-family/c-common.c index 813212cc21d..088626d1e09 100644 --- a/gcc/c-family/c-common.c +++ b/gcc/c-family/c-common.c @@ -5770,6 +5770,7 @@ parse_optimize_options (tree args, bool attr_p) decode_options (&global_options, &global_options_set, decoded_options, decoded_options_count, input_location, global_dc, NULL); + free (decoded_options); targetm.override_options_after_change(); -- 2.26.2