OSDN Git Service

2007-04-06 Jose Ruiz <ruiz@adacore.com>
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 6 Apr 2007 09:17:12 +0000 (09:17 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 6 Apr 2007 09:17:12 +0000 (09:17 +0000)
* a-retide.adb: Add elaboration code to ensure that the tasking run
time is initialized when using delay operations even when no task is
created.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@123549 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ada/a-retide.adb

index 1c8eabb..f6ffe7e 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                  B o d y                                 --
 --                                                                          --
---         Copyright (C) 1992-2005, Free Software Foundation, Inc.          --
+--         Copyright (C) 1992-2006, Free Software Foundation, Inc.          --
 --                                                                          --
 -- GNARL 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- --
@@ -36,6 +36,7 @@ with Ada.Exceptions;
 
 with System.Tasking;
 --  Used for Task_Id
+--           Initialize
 
 with System.Task_Primitives.Operations;
 --  Used for Timed_Delay
@@ -82,4 +83,10 @@ package body Ada.Real_Time.Delays is
       return To_Duration (Time_Span (T));
    end To_Duration;
 
+begin
+   --  Ensure that the tasking run time is initialized when using delay
+   --  operations. The initialization routine has the required machinery to
+   --  prevent multiple calls to Initialize.
+
+   System.Tasking.Initialize;
 end Ada.Real_Time.Delays;