https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118860
Heiko Eißfeldt <heiko at hexco dot de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |heiko at hexco dot de --- Comment #2 from Heiko Eißfeldt <heiko at hexco dot de> --- $ g++ pr31078.C --param=file-cache-files=16 -Wunused works $ g++ pr31078.C --param=file-cache-files=17 -Wunused does not Looks like file_cache::tune() needs to reallocate when num_file_slots_ is greater than the default size_t file_cache::num_file_slots = 16; used by the constructor file_cache::file_cache () : m_file_slots (new file_cache_slot[num_file_slots]) { initialize_input_context (nullptr, false); }