+++ /dev/null
-------------------------------------------------------------------------------
--- --
--- GNAT COMPILER COMPONENTS --
--- --
--- I N T E R F A C E S . F O R T R A N --
--- --
--- S p e c --
--- --
--- $Revision: 1.1 $
--- --
--- This specification is adapted from the Ada Reference Manual for use with --
--- GNAT. In accordance with the copyright of that document, you can freely --
--- copy and modify this specification, provided that if you redistribute a --
--- modified version, any changes that you have made are clearly indicated. --
--- --
-------------------------------------------------------------------------------
-
-with Ada.Numerics.Generic_Complex_Types;
-pragma Elaborate_All (Ada.Numerics.Generic_Complex_Types);
-
-package Interfaces.Fortran is
-pragma Pure (Fortran);
-
- type Fortran_Integer is new Integer;
- type Real is new Float;
- type Double_Precision is new Long_Float;
-
- type Logical is new Boolean;
- for Logical'Size use Integer'Size;
- pragma Convention (Fortran, Logical);
- -- As required by Fortran standard, stand alone logical allocates same
- -- space as integer (but what about the array case???). The convention
- -- is important, since in Fortran, Booleans have zero/non-zero semantics
- -- for False/True, and the pragma Convention (Fortran) activates the
- -- special handling required in this case.
-
- package Single_Precision_Complex_Types is
- new Ada.Numerics.Generic_Complex_Types (Real);
-
- type Complex is new Single_Precision_Complex_Types.Complex;
-
- subtype Imaginary is Single_Precision_Complex_Types.Imaginary;
- i : Imaginary renames Single_Precision_Complex_Types.i;
- j : Imaginary renames Single_Precision_Complex_Types.j;
-
- type Character_Set is new Character;
-
- type Fortran_Character is array (Positive range <>) of Character_Set;
-
- function To_Fortran (Item : in Character) return Character_Set;
- function To_Ada (Item : in Character_Set) return Character;
-
- function To_Fortran (Item : in String) return Fortran_Character;
- function To_Ada (Item : in Fortran_Character) return String;
-
- procedure To_Fortran
- (Item : in String;
- Target : out Fortran_Character;
- Last : out Natural);
-
- procedure To_Ada
- (Item : in Fortran_Character;
- Target : out String;
- Last : out Natural);
-
-end Interfaces.Fortran;