From 0afae63b0abc188340b1ee927ddbe0934ef26d9f Mon Sep 17 00:00:00 2001 From: Arnaud Charlet Date: Wed, 26 Mar 2008 07:56:12 +0000 Subject: [PATCH] * g-dirope.ads, g-dirope.adb: (Dir_Type_Value): Moved to spec. From-SVN: r133592 --- gcc/ada/ChangeLog | 4 ++++ gcc/ada/g-dirope.adb | 4 ---- gcc/ada/g-dirope.ads | 11 ++++++++++- 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,3 +1,7 @@ +2008-03-26 Arnaud Charlet + + * g-dirope.ads, g-dirope.adb: (Dir_Type_Value): Moved to spec. + 2008-03-26 Arnaud Charlet * a-witeio.adb: Fix problem with Current_Output (introduce Self). 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; -- 2.30.2