https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108924
Bug ID: 108924 Summary: memory leak in doloop_warn Product: gcc Version: 13.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: rguenth at gcc dot gnu.org Target Milestone: --- valgrind leak check complains ==8747== 16 bytes in 2 blocks are definitely lost in loss record 6 of 2,309 ==8747== at 0x4C346A4: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==8747== by 0x5697698: __gmp_default_allocate (in /usr/lib64/libgmp.so.10.3.2) ==8747== by 0x56A7A22: __gmpz_init_set (in /usr/lib64/libgmp.so.10.3.2) ==8747== by 0x874110: do_subscript (frontend-passes.cc:2863) ==8747== by 0x874110: do_function(gfc_expr**, int*, void*) (frontend-passes.cc:2710) ==8747== by 0x870675: gfc_expr_walker(gfc_expr**, int (*)(gfc_expr**, int*, void*), void*) (frontend-passes.cc:5243) ==8747== by 0x870859: gfc_expr_walker(gfc_expr**, int (*)(gfc_expr**, int*, void*), void*) (frontend-passes.cc:5250) ==8747== by 0x870859: gfc_expr_walker(gfc_expr**, int (*)(gfc_expr**, int*, void*), void*) (frontend-passes.cc:5250) ==8747== by 0x8727D9: gfc_code_walker(gfc_code**, int (*)(gfc_code**, int*, void*), int (*)(gfc_expr**, int*, void*), void*) (frontend-passes.cc:5680) ==8747== by 0x872857: gfc_code_walker(gfc_code**, int (*)(gfc_code**, int*, void*), int (*)(gfc_expr**, int*, void*), void*) (frontend-passes.cc:5687) ==8747== by 0x872857: gfc_code_walker(gfc_code**, int (*)(gfc_code**, int*, void*), int (*)(gfc_expr**, int*, void*), void*) (frontend-passes.cc:5687) ==8747== by 0x872857: gfc_code_walker(gfc_code**, int (*)(gfc_code**, int*, void*), int (*)(gfc_expr**, int*, void*), void*) (frontend-passes.cc:5687) ==8747== by 0x8738CB: doloop_warn(gfc_namespace*) (frontend-passes.cc:3079) so it looks like some gmp vars are not released.