https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89349
--- Comment #12 from Eric Botcazou <ebotcazou at gcc dot gnu.org> --- It's a known historical quirk which has been fixed on the mainline: 2018-05-25 Arnaud Charlet <char...@adacore.com> * osint.ads (Unknown_Attributes): No longer pretend this is a constant. (No_File_Info_Cache): Initialize separately. * osint.adb (No_File_Info_Cache): Update initializer. In osint.ads there is: Unknown_Attributes : constant File_Attributes := (others => 0); -- Will be initialized properly at elaboration (for efficiency later on, -- avoid function calls every time we want to reset the attributes). which is both put into read-only memory and written to later...