https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118919
--- Comment #4 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The releases/gcc-14 branch has been updated by David Malcolm <[email protected]>: https://gcc.gnu.org/g:004198aa24e60ae9e81554a17d9b10c7beb4a759 commit r14-12112-g004198aa24e60ae9e81554a17d9b10c7beb4a759 Author: David Malcolm <[email protected]> Date: Wed Feb 19 09:46:43 2025 -0500 input: give file_cache_slot its own copy of the file path [PR118919] input.cc's file_cache was borrowing copies of the file name. This could lead to use-after-free when writing out sarif output from Fortran, which frees its filenames before the sarif output is fully written out. Fix by taking a copy in file_cache_slot. gcc/ChangeLog: PR other/118919 * input.cc (file_cache_slot::m_file_path): Make non-const. (file_cache_slot::evict): Free m_file_path. (file_cache_slot::create): Store a copy of file_path if non-null. (file_cache_slot::~file_cache_slot): Free m_file_path. Signed-off-by: David Malcolm <[email protected]> (cherry picked from commit ee6619b1246b38cfb36f6efd931a6f475a9033c7)
