summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ada/ChangeLog4
-rw-r--r--gcc/ada/g-dirope.adb4
-rw-r--r--gcc/ada/g-dirope.ads11
3 files changed, 14 insertions, 5 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index f2853e8fa80..f8ef97c5a91 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,5 +1,9 @@
2008-03-26 Arnaud Charlet <charlet@adacore.com>
+ * g-dirope.ads, g-dirope.adb: (Dir_Type_Value): Moved to spec.
+
+2008-03-26 Arnaud Charlet <charlet@adacore.com>
+
* a-witeio.adb: Fix problem with Current_Output (introduce Self).
Fix problem of status check for null file
diff --git a/gcc/ada/g-dirope.adb b/gcc/ada/g-dirope.adb
index 774444d0826..0cccaba2cd2 100644
--- a/gcc/ada/g-dirope.adb
+++ b/gcc/ada/g-dirope.adb
@@ -46,10 +46,6 @@ package body GNAT.Directory_Operations is
use Ada;
- type Dir_Type_Value is new System.Address;
- -- This is the low-level address directory structure as returned by the C
- -- opendir routine.
-
Filename_Max : constant Integer := 1024;
-- 1024 is the value of FILENAME_MAX in stdio.h
diff --git a/gcc/ada/g-dirope.ads b/gcc/ada/g-dirope.ads
index 060c3c439d9..c489eccdedc 100644
--- a/gcc/ada/g-dirope.ads
+++ b/gcc/ada/g-dirope.ads
@@ -43,6 +43,7 @@
-- directory names (OpenVMS native directory format is not supported).
-- Read individual entries for more specific notes on OpenVMS support.
+with System;
with Ada.Strings.Maps;
package GNAT.Directory_Operations is
@@ -254,7 +255,15 @@ package GNAT.Directory_Operations is
private
- type Dir_Type_Value;
+ type Dir_Type_Value is new System.Address;
+ -- Low-level address directory structure as returned by opendir in C
+ --
+ -- Note that we used to define this type in the body of this package,
+ -- but this was causing troubles in the context of .NET code generation
+ -- (because Taft amendment types are not fully implemented and cause
+ -- undefined references to the class), so we moved the type declaration
+ -- to the spec's private part, which is no problem in any case here.
+
type Dir_Type is access Dir_Type_Value;
Null_Dir : constant Dir_Type := null;