xref: /netbsd-src/external/gpl3/gcc.old/dist/libgfortran/ieee/ieee_features.F90 (revision 4c3eb207d36f67d31994830c0a694161fc1ca39b)
1627f7eb2Smrg!    Implementation of the IEEE_FEATURES standard intrinsic module
2*4c3eb207Smrg!    Copyright (C) 2013-2020 Free Software Foundation, Inc.
3627f7eb2Smrg!    Contributed by Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
4627f7eb2Smrg!
5627f7eb2Smrg! This file is part of the GNU Fortran runtime library (libgfortran).
6627f7eb2Smrg!
7627f7eb2Smrg! Libgfortran is free software; you can redistribute it and/or
8627f7eb2Smrg! modify it under the terms of the GNU General Public
9627f7eb2Smrg! License as published by the Free Software Foundation; either
10627f7eb2Smrg! version 3 of the License, or (at your option) any later version.
11627f7eb2Smrg!
12627f7eb2Smrg! Libgfortran is distributed in the hope that it will be useful,
13627f7eb2Smrg! but WITHOUT ANY WARRANTY; without even the implied warranty of
14627f7eb2Smrg! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15627f7eb2Smrg! GNU General Public License for more details.
16627f7eb2Smrg!
17627f7eb2Smrg! Under Section 7 of GPL version 3, you are granted additional
18627f7eb2Smrg! permissions described in the GCC Runtime Library Exception, version
19627f7eb2Smrg! 3.1, as published by the Free Software Foundation.
20627f7eb2Smrg!
21627f7eb2Smrg! You should have received a copy of the GNU General Public License and
22627f7eb2Smrg! a copy of the GCC Runtime Library Exception along with this program;
23627f7eb2Smrg! see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
24627f7eb2Smrg! <http://www.gnu.org/licenses/>.  */
25627f7eb2Smrg
26627f7eb2Smrgmodule IEEE_FEATURES
27627f7eb2Smrg
28627f7eb2Smrg  implicit none
29627f7eb2Smrg  private
30627f7eb2Smrg
31627f7eb2Smrg  type, public :: IEEE_FEATURES_TYPE
32627f7eb2Smrg    private
33627f7eb2Smrg    integer :: hidden
34627f7eb2Smrg  end type
35627f7eb2Smrg
36627f7eb2Smrg  type(IEEE_FEATURES_TYPE), parameter, public :: &
37627f7eb2Smrg    IEEE_DATATYPE       = IEEE_FEATURES_TYPE(0), &
38627f7eb2Smrg    IEEE_DENORMAL       = IEEE_FEATURES_TYPE(1), &
39627f7eb2Smrg    IEEE_SUBNORMAL      = IEEE_FEATURES_TYPE(1), &
40627f7eb2Smrg    IEEE_DIVIDE         = IEEE_FEATURES_TYPE(2), &
41627f7eb2Smrg    IEEE_HALTING        = IEEE_FEATURES_TYPE(3), &
42627f7eb2Smrg    IEEE_INEXACT_FLAG   = IEEE_FEATURES_TYPE(4), &
43627f7eb2Smrg    IEEE_INF            = IEEE_FEATURES_TYPE(5), &
44627f7eb2Smrg    IEEE_INVALID_FLAG   = IEEE_FEATURES_TYPE(6), &
45627f7eb2Smrg    IEEE_NAN            = IEEE_FEATURES_TYPE(7), &
46627f7eb2Smrg    IEEE_ROUNDING       = IEEE_FEATURES_TYPE(8), &
47627f7eb2Smrg    IEEE_SQRT           = IEEE_FEATURES_TYPE(9), &
48627f7eb2Smrg    IEEE_UNDERFLOW_FLAG = IEEE_FEATURES_TYPE(10)
49627f7eb2Smrg
50627f7eb2Smrgend module IEEE_FEATURES
51