OSDN Git Service

PR c++/9704
[pf3gnuchains/gcc-fork.git] / gcc / ada / a-ngelfu.ads
1 ------------------------------------------------------------------------------
2 --                                                                          --
3 --                         GNAT RUNTIME COMPONENTS                          --
4 --                                                                          --
5 --                ADA.NUMERICS.GENERIC_ELEMENTARY_FUNCTIONS                 --
6 --                                                                          --
7 --                                 S p e c                                  --
8 --                                                                          --
9 --                                                                          --
10 -- This specification is adapted from the Ada Reference Manual for use with --
11 -- GNAT.  In accordance with the copyright of that document, you can freely --
12 -- copy and modify this specification,  provided that if you redistribute a --
13 -- modified version,  any changes that you have made are clearly indicated. --
14 --                                                                          --
15 ------------------------------------------------------------------------------
16
17 generic
18    type Float_Type is digits <>;
19
20 package Ada.Numerics.Generic_Elementary_Functions is
21 pragma Pure (Generic_Elementary_Functions);
22
23    function Sqrt    (X           : Float_Type'Base) return Float_Type'Base;
24    function Log     (X           : Float_Type'Base) return Float_Type'Base;
25    function Log     (X, Base     : Float_Type'Base) return Float_Type'Base;
26    function Exp     (X           : Float_Type'Base) return Float_Type'Base;
27    function "**"    (Left, Right : Float_Type'Base) return Float_Type'Base;
28
29    function Sin     (X           : Float_Type'Base) return Float_Type'Base;
30    function Sin     (X, Cycle    : Float_Type'Base) return Float_Type'Base;
31    function Cos     (X           : Float_Type'Base) return Float_Type'Base;
32    function Cos     (X, Cycle    : Float_Type'Base) return Float_Type'Base;
33    function Tan     (X           : Float_Type'Base) return Float_Type'Base;
34    function Tan     (X, Cycle    : Float_Type'Base) return Float_Type'Base;
35    function Cot     (X           : Float_Type'Base) return Float_Type'Base;
36    function Cot     (X, Cycle    : Float_Type'Base) return Float_Type'Base;
37
38    function Arcsin  (X           : Float_Type'Base) return Float_Type'Base;
39    function Arcsin  (X, Cycle    : Float_Type'Base) return Float_Type'Base;
40    function Arccos  (X           : Float_Type'Base) return Float_Type'Base;
41    function Arccos  (X, Cycle    : Float_Type'Base) return Float_Type'Base;
42
43    function Arctan
44      (Y   : Float_Type'Base;
45       X   : Float_Type'Base := 1.0)
46      return Float_Type'Base;
47
48    function Arctan
49      (Y     : Float_Type'Base;
50       X     : Float_Type'Base := 1.0;
51       Cycle : Float_Type'Base)
52       return  Float_Type'Base;
53
54    function Arccot
55      (X   : Float_Type'Base;
56       Y   : Float_Type'Base := 1.0)
57      return Float_Type'Base;
58
59    function Arccot
60      (X     : Float_Type'Base;
61       Y     : Float_Type'Base := 1.0;
62       Cycle : Float_Type'Base)
63      return   Float_Type'Base;
64
65    function Sinh    (X : Float_Type'Base) return Float_Type'Base;
66    function Cosh    (X : Float_Type'Base) return Float_Type'Base;
67    function Tanh    (X : Float_Type'Base) return Float_Type'Base;
68    function Coth    (X : Float_Type'Base) return Float_Type'Base;
69    function Arcsinh (X : Float_Type'Base) return Float_Type'Base;
70    function Arccosh (X : Float_Type'Base) return Float_Type'Base;
71    function Arctanh (X : Float_Type'Base) return Float_Type'Base;
72    function Arccoth (X : Float_Type'Base) return Float_Type'Base;
73
74 end Ada.Numerics.Generic_Elementary_Functions;