summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ada/ChangeLog5
-rw-r--r--gcc/ada/osint-m.adb13
2 files changed, 17 insertions, 1 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index dff3b6cbcca..73ec36e119b 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,8 @@
+2005-11-14 Robert Dewar <dewar@adacore.com>
+
+ PR ada/18434
+ * osint-m.adb: Add pragma Elaborate_All for Osint
+
2005-11-10 Eric Botcazou <ebotcazou@adacore.com>
PR ada/23995
diff --git a/gcc/ada/osint-m.adb b/gcc/ada/osint-m.adb
index 3138d6f74da..964edf33227 100644
--- a/gcc/ada/osint-m.adb
+++ b/gcc/ada/osint-m.adb
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
--- Copyright (C) 2001 Free Software Foundation, Inc. --
+-- Copyright (C) 2001-2005, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@@ -24,6 +24,17 @@
-- --
------------------------------------------------------------------------------
+with Osint;
+
+pragma Elaborate_All (Osint);
+-- This pragma is needed because of the call to Set_Program in the
+-- elaboration of the package. We cannot rely on the static model
+-- of elaboration since the compiler is routinely compiled with
+-- checks off (-gnatp), and with older versions of the compiler
+-- (up to and including most 5.04 wavefronts), -gnatp suppresses
+-- the static elaboration check mechanisms. It could be removed
+-- one day, but there really is no need to do so.
+
package body Osint.M is
-----------------------