ieee_features.F90 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. ! Implementation of the IEEE_FEATURES standard intrinsic module
  2. ! Copyright (C) 2013-2015 Free Software Foundation, Inc.
  3. ! Contributed by Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
  4. !
  5. ! This file is part of the GNU Fortran runtime library (libgfortran).
  6. !
  7. ! Libgfortran is free software; you can redistribute it and/or
  8. ! modify it under the terms of the GNU General Public
  9. ! License as published by the Free Software Foundation; either
  10. ! version 3 of the License, or (at your option) any later version.
  11. !
  12. ! Libgfortran is distributed in the hope that it will be useful,
  13. ! but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. ! GNU General Public License for more details.
  16. !
  17. ! Under Section 7 of GPL version 3, you are granted additional
  18. ! permissions described in the GCC Runtime Library Exception, version
  19. ! 3.1, as published by the Free Software Foundation.
  20. !
  21. ! You should have received a copy of the GNU General Public License and
  22. ! a copy of the GCC Runtime Library Exception along with this program;
  23. ! see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
  24. ! <http://www.gnu.org/licenses/>. */
  25. module IEEE_FEATURES
  26. implicit none
  27. private
  28. type, public :: IEEE_FEATURES_TYPE
  29. private
  30. integer :: hidden
  31. end type
  32. type(IEEE_FEATURES_TYPE), parameter, public :: &
  33. IEEE_DATATYPE = IEEE_FEATURES_TYPE(0), &
  34. IEEE_DENORMAL = IEEE_FEATURES_TYPE(1), &
  35. IEEE_DIVIDE = IEEE_FEATURES_TYPE(2), &
  36. IEEE_HALTING = IEEE_FEATURES_TYPE(3), &
  37. IEEE_INEXACT_FLAG = IEEE_FEATURES_TYPE(4), &
  38. IEEE_INF = IEEE_FEATURES_TYPE(5), &
  39. IEEE_INVALID_FLAG = IEEE_FEATURES_TYPE(6), &
  40. IEEE_NAN = IEEE_FEATURES_TYPE(7), &
  41. IEEE_ROUNDING = IEEE_FEATURES_TYPE(8), &
  42. IEEE_SQRT = IEEE_FEATURES_TYPE(9), &
  43. IEEE_UNDERFLOW_FLAG = IEEE_FEATURES_TYPE(10)
  44. end module IEEE_FEATURES