summaryrefslogtreecommitdiffstats
path: root/m4
diff options
context:
space:
mode:
authorM. Scot Breitenfeld <brtnfld@hdfgroup.org>2020-02-27 18:19:29 (GMT)
committerDavid Young <dyoung@hdfgroup.org>2020-05-20 14:31:55 (GMT)
commitd40e543e638af7080d2ae60175ae0a02365d35cf (patch)
tree437da96e6785c5b6f83c4c6d55a13af79e78794e /m4
parente417c01bd38f36f0dbaa040488a25d864a9c0f20 (diff)
downloadhdf5-d40e543e638af7080d2ae60175ae0a02365d35cf.zip
hdf5-d40e543e638af7080d2ae60175ae0a02365d35cf.tar.gz
hdf5-d40e543e638af7080d2ae60175ae0a02365d35cf.tar.bz2
Fixed issue building HDF5 with NAG Fortran 7.0.
Accounted for the additon of half precision floating-point with a KIND=16. HDFFV-11033
Diffstat (limited to 'm4')
-rw-r--r--m4/aclocal_fc.f9025
1 files changed, 19 insertions, 6 deletions
diff --git a/m4/aclocal_fc.f90 b/m4/aclocal_fc.f90
index 664a3c6..7e81a52 100644
--- a/m4/aclocal_fc.f90
+++ b/m4/aclocal_fc.f90
@@ -83,10 +83,11 @@ END PROGRAM PROG_FC_C_LONG_DOUBLE_EQ_C_DOUBLE
!---- START ----- Determine the available KINDs for REALs and INTEGERs
PROGRAM FC_AVAIL_KINDS
IMPLICIT NONE
- INTEGER :: ik, jk, k, max_decimal_prec
- INTEGER :: num_rkinds = 1, num_ikinds = 1
+ INTEGER :: ik, jk, k, kk, max_decimal_prec
+ INTEGER :: prev_rkind, num_rkinds = 1, num_ikinds = 1
INTEGER, DIMENSION(1:10) :: list_ikinds = -1
INTEGER, DIMENSION(1:10) :: list_rkinds = -1
+ LOGICAL :: new_kind
OPEN(8, FILE='pac_fconftest.out', FORM='formatted')
@@ -113,14 +114,26 @@ PROGRAM FC_AVAIL_KINDS
! Find real KINDs
list_rkinds(num_rkinds)=SELECTED_REAL_KIND(1)
max_decimal_prec = 1
+ prev_rkind=list_rkinds(num_rkinds)
prec: DO ik = 2, 36
- exp: DO jk = 1, 17000
+ exp: DO jk = 1, 700
k = SELECTED_REAL_KIND(ik,jk)
IF(k.LT.0) EXIT exp
- IF(k.GT.list_rkinds(num_rkinds))THEN
- num_rkinds = num_rkinds + 1
- list_rkinds(num_rkinds) = k
+ IF(k.NE.prev_rkind)THEN
+ ! Check if we aleady have that kind
+ new_kind = .TRUE.
+ DO kk = 1, num_rkinds
+ IF(k.EQ.list_rkinds(kk))THEN
+ new_kind=.FALSE.
+ EXIT
+ ENDIF
+ ENDDO
+ IF(new_kind)THEN
+ num_rkinds = num_rkinds + 1
+ list_rkinds(num_rkinds) = k
+ prev_rkind=list_rkinds(num_rkinds)
+ ENDIF
ENDIF
max_decimal_prec = ik
ENDDO exp