Skip to content

Commit 47a4a75

Browse files
authored
Merge pull request #492 from weslleyspereira/fix-segfault-xeigtstz-335
Fix segfault xeigtstz 335
2 parents 8960228 + 7c74f6a commit 47a4a75

File tree

8 files changed

+227
-46
lines changed

8 files changed

+227
-46
lines changed

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ script:
3939
-DLAPACKE:BOOL=ON
4040
-DBUILD_TESTING=ON
4141
-DLAPACKE_WITH_TMG:BOOL=ON
42-
-DCMAKE_Fortran_FLAGS:STRING="-fimplicit-none"
42+
-DCMAKE_Fortran_FLAGS:STRING="-fimplicit-none -frecursive"
4343
${SRC_DIR}
4444
- ctest -D ExperimentalStart
4545
- ctest -D ExperimentalConfigure

CMakeLists.txt

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,33 @@ configure_file(
9292
include(PreventInSourceBuilds)
9393
include(PreventInBuildInstalls)
9494

95+
# Check if recursive flag exists
96+
include(CheckFortranCompilerFlag)
97+
check_fortran_compiler_flag("-recursive" _recursiveFlag)
98+
check_fortran_compiler_flag("-frecursive" _frecursiveFlag)
99+
check_fortran_compiler_flag("-Mrecursive" _MrecursiveFlag)
100+
101+
# Add recursive flag
102+
if(_recursiveFlag)
103+
string(REGEX MATCH "-recursive" output_test <string> "${CMAKE_Fortran_FLAGS}")
104+
if(NOT output_test)
105+
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -recursive"
106+
CACHE STRING "Recursive flag must be set" FORCE)
107+
endif()
108+
elseif(_frecursiveFlag)
109+
string(REGEX MATCH "-frecursive" output_test <string> "${CMAKE_Fortran_FLAGS}")
110+
if(NOT output_test)
111+
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -frecursive"
112+
CACHE STRING "Recursive flag must be set" FORCE)
113+
endif()
114+
elseif(_MrecursiveFlag)
115+
string(REGEX MATCH "-Mrecursive" output_test <string> "${CMAKE_Fortran_FLAGS}")
116+
if(NOT output_test)
117+
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -Mrecursive"
118+
CACHE STRING "Recursive flag must be set" FORCE)
119+
endif()
120+
endif()
121+
95122
if(UNIX)
96123
if(CMAKE_Fortran_COMPILER_ID STREQUAL Intel)
97124
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fp-model strict")

TESTING/EIG/CMakeLists.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ set(AEIGTST
2525
set(SCIGTST slafts.f slahd2.f slasum.f slatb9.f sstech.f sstect.f
2626
ssvdch.f ssvdct.f ssxt1.f)
2727

28-
set(SEIGTST schkee.f
28+
set(SEIGTST schkee.F
2929
sbdt01.f sbdt02.f sbdt03.f sbdt04.f sbdt05.f
3030
schkbb.f schkbd.f schkbk.f schkbl.f schkec.f
3131
schkgg.f schkgk.f schkgl.f schkhs.f schksb.f schkst.f schkst2stg.f schksb2stg.f
@@ -42,7 +42,7 @@ set(SEIGTST schkee.f
4242
sort03.f ssbt21.f ssgt01.f sslect.f sspt21.f sstt21.f
4343
sstt22.f ssyt21.f ssyt22.f)
4444

45-
set(CEIGTST cchkee.f
45+
set(CEIGTST cchkee.F
4646
cbdt01.f cbdt02.f cbdt03.f cbdt05.f
4747
cchkbb.f cchkbd.f cchkbk.f cchkbl.f cchkec.f
4848
cchkgg.f cchkgk.f cchkgl.f cchkhb.f cchkhs.f cchkst.f cchkst2stg.f cchkhb2stg.f
@@ -62,7 +62,7 @@ set(CEIGTST cchkee.f
6262
set(DZIGTST dlafts.f dlahd2.f dlasum.f dlatb9.f dstech.f dstect.f
6363
dsvdch.f dsvdct.f dsxt1.f)
6464

65-
set(DEIGTST dchkee.f
65+
set(DEIGTST dchkee.F
6666
dbdt01.f dbdt02.f dbdt03.f dbdt04.f dbdt05.f
6767
dchkbb.f dchkbd.f dchkbk.f dchkbl.f dchkec.f
6868
dchkgg.f dchkgk.f dchkgl.f dchkhs.f dchksb.f dchkst.f dchkst2stg.f dchksb2stg.f
@@ -79,7 +79,7 @@ set(DEIGTST dchkee.f
7979
dort03.f dsbt21.f dsgt01.f dslect.f dspt21.f dstt21.f
8080
dstt22.f dsyt21.f dsyt22.f)
8181

82-
set(ZEIGTST zchkee.f
82+
set(ZEIGTST zchkee.F
8383
zbdt01.f zbdt02.f zbdt03.f zbdt05.f
8484
zchkbb.f zchkbd.f zchkbk.f zchkbl.f zchkec.f
8585
zchkgg.f zchkgk.f zchkgl.f zchkhb.f zchkhs.f zchkst.f zchkst2stg.f zchkhb2stg.f

TESTING/EIG/Makefile

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -157,11 +157,11 @@ cleanobj:
157157
cleanexe:
158158
rm -f xeigtst*
159159

160-
schkee.o: schkee.f
160+
schkee.o: schkee.F
161161
$(FC) $(FFLAGS_DRV) -c -o $@ $<
162-
dchkee.o: dchkee.f
162+
dchkee.o: dchkee.F
163163
$(FC) $(FFLAGS_DRV) -c -o $@ $<
164-
cchkee.o: cchkee.f
164+
cchkee.o: cchkee.F
165165
$(FC) $(FFLAGS_DRV) -c -o $@ $<
166-
zchkee.o: zchkee.f
166+
zchkee.o: zchkee.F
167167
$(FC) $(FFLAGS_DRV) -c -o $@ $<

TESTING/EIG/cchkee.f renamed to TESTING/EIG/cchkee.F

Lines changed: 56 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1034,6 +1034,10 @@
10341034
* =====================================================================
10351035
PROGRAM CCHKEE
10361036
*
1037+
#if defined(_OPENMP)
1038+
use omp_lib
1039+
#endif
1040+
*
10371041
* -- LAPACK test routine (version 3.7.0) --
10381042
* -- LAPACK is a software package provided by Univ. of Tennessee, --
10391043
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
@@ -1071,7 +1075,7 @@ PROGRAM CCHKEE
10711075
CHARACTER*80 LINE
10721076
INTEGER I, I1, IC, INFO, ITMP, K, LENP, MAXTYP, NEWSD,
10731077
$ NK, NN, NPARMS, NRHS, NTYPES,
1074-
$ VERS_MAJOR, VERS_MINOR, VERS_PATCH
1078+
$ VERS_MAJOR, VERS_MINOR, VERS_PATCH, N_THREADS
10751079
REAL EPS, S1, S2, THRESH, THRSHN
10761080
* ..
10771081
* .. Local Arrays ..
@@ -1084,12 +1088,16 @@ PROGRAM CCHKEE
10841088
INTEGER INMIN( MAXIN ), INWIN( MAXIN ), INIBL( MAXIN ),
10851089
$ ISHFTS( MAXIN ), IACC22( MAXIN )
10861090
REAL ALPHA( NMAX ), BETA( NMAX ), DR( NMAX, 12 ),
1087-
$ RESULT( 500 ), RWORK( LWORK ), S( NMAX*NMAX )
1088-
COMPLEX A( NMAX*NMAX, NEED ), B( NMAX*NMAX, 5 ),
1089-
$ C( NCMAX*NCMAX, NCMAX*NCMAX ), DC( NMAX, 6 ),
1090-
$ TAUA( NMAX ), TAUB( NMAX ), WORK( LWORK ),
1091+
$ RESULT( 500 )
1092+
COMPLEX DC( NMAX, 6 ), TAUA( NMAX ), TAUB( NMAX ),
10911093
$ X( 5*NMAX )
10921094
* ..
1095+
* .. Allocatable Arrays ..
1096+
INTEGER AllocateStatus
1097+
REAL, DIMENSION(:), ALLOCATABLE :: RWORK, S
1098+
COMPLEX, DIMENSION(:), ALLOCATABLE :: WORK
1099+
COMPLEX, DIMENSION(:,:), ALLOCATABLE :: A, B, C
1100+
* ..
10931101
* .. External Functions ..
10941102
LOGICAL LSAMEN
10951103
REAL SECOND, SLAMCH
@@ -1130,6 +1138,21 @@ PROGRAM CCHKEE
11301138
DATA INTSTR / '0123456789' /
11311139
DATA IOLDSD / 0, 0, 0, 1 /
11321140
* ..
1141+
* .. Allocate memory dynamically ..
1142+
*
1143+
ALLOCATE ( S(NMAX*NMAX), STAT = AllocateStatus )
1144+
IF (AllocateStatus /= 0) STOP "*** Not enough memory ***"
1145+
ALLOCATE ( A(NMAX*NMAX,NEED), STAT = AllocateStatus )
1146+
IF (AllocateStatus /= 0) STOP "*** Not enough memory ***"
1147+
ALLOCATE ( B(NMAX*NMAX,5), STAT = AllocateStatus )
1148+
IF (AllocateStatus /= 0) STOP "*** Not enough memory ***"
1149+
ALLOCATE ( C(NCMAX*NCMAX,NCMAX*NCMAX), STAT = AllocateStatus )
1150+
IF (AllocateStatus /= 0) STOP "*** Not enough memory ***"
1151+
ALLOCATE ( RWORK(LWORK), STAT = AllocateStatus )
1152+
IF (AllocateStatus /= 0) STOP "*** Not enough memory ***"
1153+
ALLOCATE ( WORK(LWORK), STAT = AllocateStatus )
1154+
IF (AllocateStatus /= 0) STOP "*** Not enough memory ***"
1155+
* ..
11331156
* .. Executable Statements ..
11341157
*
11351158
A = 0.0
@@ -1846,8 +1869,16 @@ PROGRAM CCHKEE
18461869
CALL ALAREQ( C3, NTYPES, DOTYPE, MAXTYP, NIN, NOUT )
18471870
CALL XLAENV( 1, 1 )
18481871
CALL XLAENV( 9, 25 )
1849-
IF( TSTERR )
1850-
$ CALL CERRST( 'CST', NOUT )
1872+
IF( TSTERR ) THEN
1873+
#if defined(_OPENMP)
1874+
N_THREADS = OMP_GET_NUM_THREADS()
1875+
CALL OMP_SET_NUM_THREADS(1)
1876+
#endif
1877+
CALL CERRST( 'CST', NOUT )
1878+
#if defined(_OPENMP)
1879+
CALL OMP_SET_NUM_THREADS(N_THREADS)
1880+
#endif
1881+
END IF
18511882
DO 290 I = 1, NPARMS
18521883
CALL XLAENV( 1, NBVAL( I ) )
18531884
CALL XLAENV( 2, NBMIN( I ) )
@@ -2305,8 +2336,16 @@ PROGRAM CCHKEE
23052336
MAXTYP = 15
23062337
NTYPES = MIN( MAXTYP, NTYPES )
23072338
CALL ALAREQ( C3, NTYPES, DOTYPE, MAXTYP, NIN, NOUT )
2308-
IF( TSTERR )
2309-
$ CALL CERRST( 'CHB', NOUT )
2339+
IF( TSTERR ) THEN
2340+
#if defined(_OPENMP)
2341+
N_THREADS = OMP_GET_NUM_THREADS()
2342+
CALL OMP_SET_NUM_THREADS(1)
2343+
#endif
2344+
CALL CERRST( 'CHB', NOUT )
2345+
#if defined(_OPENMP)
2346+
CALL OMP_SET_NUM_THREADS(N_THREADS)
2347+
#endif
2348+
END IF
23102349
* CALL CCHKHB( NN, NVAL, NK, KVAL, MAXTYP, DOTYPE, ISEED, THRESH,
23112350
* $ NOUT, A( 1, 1 ), NMAX, DR( 1, 1 ), DR( 1, 2 ),
23122351
* $ A( 1, 2 ), NMAX, WORK, LWORK, RWORK, RESULT,
@@ -2436,7 +2475,14 @@ PROGRAM CCHKEE
24362475
380 CONTINUE
24372476
WRITE( NOUT, FMT = 9994 )
24382477
S2 = SECOND( )
2439-
WRITE( NOUT, FMT = 9993 )S2 - S1
2478+
WRITE( NOUT, FMT = 9993 )S2 - S1
2479+
*
2480+
DEALLOCATE (S, STAT = AllocateStatus)
2481+
DEALLOCATE (A, STAT = AllocateStatus)
2482+
DEALLOCATE (B, STAT = AllocateStatus)
2483+
DEALLOCATE (C, STAT = AllocateStatus)
2484+
DEALLOCATE (RWORK, STAT = AllocateStatus)
2485+
DEALLOCATE (WORK, STAT = AllocateStatus)
24402486
*
24412487
9999 FORMAT( / ' Execution not attempted due to input errors' )
24422488
9997 FORMAT( / / 1X, A3, ': NB =', I4, ', NBMIN =', I4, ', NX =', I4 )

TESTING/EIG/dchkee.f renamed to TESTING/EIG/dchkee.F

Lines changed: 41 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1038,7 +1038,11 @@
10381038
*> \ingroup double_eig
10391039
*
10401040
* =====================================================================
1041-
PROGRAM DCHKEE
1041+
PROGRAM DCHKEE
1042+
*
1043+
#if defined(_OPENMP)
1044+
use omp_lib
1045+
#endif
10421046
*
10431047
* -- LAPACK test routine (version 3.7.0) --
10441048
* -- LAPACK is a software package provided by Univ. of Tennessee, --
@@ -1077,7 +1081,7 @@ PROGRAM DCHKEE
10771081
CHARACTER*80 LINE
10781082
INTEGER I, I1, IC, INFO, ITMP, K, LENP, MAXTYP, NEWSD,
10791083
$ NK, NN, NPARMS, NRHS, NTYPES,
1080-
$ VERS_MAJOR, VERS_MINOR, VERS_PATCH
1084+
$ VERS_MAJOR, VERS_MINOR, VERS_PATCH, N_THREADS
10811085
DOUBLE PRECISION EPS, S1, S2, THRESH, THRSHN
10821086
* ..
10831087
* .. Local Arrays ..
@@ -1089,10 +1093,13 @@ PROGRAM DCHKEE
10891093
$ PVAL( MAXIN )
10901094
INTEGER INMIN( MAXIN ), INWIN( MAXIN ), INIBL( MAXIN ),
10911095
$ ISHFTS( MAXIN ), IACC22( MAXIN )
1092-
DOUBLE PRECISION A( NMAX*NMAX, NEED ), B( NMAX*NMAX, 5 ),
1093-
$ C( NCMAX*NCMAX, NCMAX*NCMAX ), D( NMAX, 12 ),
1094-
$ RESULT( 500 ), TAUA( NMAX ), TAUB( NMAX ),
1095-
$ WORK( LWORK ), X( 5*NMAX )
1096+
DOUBLE PRECISION D( NMAX, 12 ), RESULT( 500 ), TAUA( NMAX ),
1097+
$ TAUB( NMAX ), X( 5*NMAX )
1098+
* ..
1099+
* .. Allocatable Arrays ..
1100+
INTEGER AllocateStatus
1101+
DOUBLE PRECISION, DIMENSION(:), ALLOCATABLE :: WORK
1102+
DOUBLE PRECISION, DIMENSION(:,:), ALLOCATABLE :: A, B, C
10961103
* ..
10971104
* .. External Functions ..
10981105
LOGICAL LSAMEN
@@ -1132,7 +1139,18 @@ PROGRAM DCHKEE
11321139
* ..
11331140
* .. Data statements ..
11341141
DATA INTSTR / '0123456789' /
1135-
DATA IOLDSD / 0, 0, 0, 1 /
1142+
DATA IOLDSD / 0, 0, 0, 1 /
1143+
* ..
1144+
* .. Allocate memory dynamically ..
1145+
*
1146+
ALLOCATE ( A(NMAX*NMAX,NEED), STAT = AllocateStatus )
1147+
IF (AllocateStatus /= 0) STOP "*** Not enough memory ***"
1148+
ALLOCATE ( B(NMAX*NMAX,5), STAT = AllocateStatus )
1149+
IF (AllocateStatus /= 0) STOP "*** Not enough memory ***"
1150+
ALLOCATE ( C(NCMAX*NCMAX,NCMAX*NCMAX), STAT = AllocateStatus )
1151+
IF (AllocateStatus /= 0) STOP "*** Not enough memory ***"
1152+
ALLOCATE ( WORK(LWORK), STAT = AllocateStatus )
1153+
IF (AllocateStatus /= 0) STOP "*** Not enough memory ***"
11361154
* ..
11371155
* .. Executable Statements ..
11381156
*
@@ -1856,8 +1874,16 @@ PROGRAM DCHKEE
18561874
CALL ALAREQ( C3, NTYPES, DOTYPE, MAXTYP, NIN, NOUT )
18571875
CALL XLAENV( 1, 1 )
18581876
CALL XLAENV( 9, 25 )
1859-
IF( TSTERR )
1860-
$ CALL DERRST( 'DST', NOUT )
1877+
IF( TSTERR ) THEN
1878+
#if defined(_OPENMP)
1879+
N_THREADS = OMP_GET_NUM_THREADS()
1880+
CALL OMP_SET_NUM_THREADS(1)
1881+
#endif
1882+
CALL DERRST( 'DST', NOUT )
1883+
#if defined(_OPENMP)
1884+
CALL OMP_SET_NUM_THREADS(N_THREADS)
1885+
#endif
1886+
END IF
18611887
DO 290 I = 1, NPARMS
18621888
CALL XLAENV( 1, NBVAL( I ) )
18631889
CALL XLAENV( 2, NBMIN( I ) )
@@ -2436,7 +2462,12 @@ PROGRAM DCHKEE
24362462
380 CONTINUE
24372463
WRITE( NOUT, FMT = 9994 )
24382464
S2 = DSECND( )
2439-
WRITE( NOUT, FMT = 9993 )S2 - S1
2465+
WRITE( NOUT, FMT = 9993 )S2 - S1
2466+
*
2467+
DEALLOCATE (A, STAT = AllocateStatus)
2468+
DEALLOCATE (B, STAT = AllocateStatus)
2469+
DEALLOCATE (C, STAT = AllocateStatus)
2470+
DEALLOCATE (WORK, STAT = AllocateStatus)
24402471
*
24412472
9999 FORMAT( / ' Execution not attempted due to input errors' )
24422473
9997 FORMAT( / / 1X, A3, ': NB =', I4, ', NBMIN =', I4, ', NX =', I4 )

TESTING/EIG/schkee.f renamed to TESTING/EIG/schkee.F

Lines changed: 39 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1040,6 +1040,10 @@
10401040
* =====================================================================
10411041
PROGRAM SCHKEE
10421042
*
1043+
#if defined(_OPENMP)
1044+
use omp_lib
1045+
#endif
1046+
*
10431047
* -- LAPACK test routine (version 3.7.0) --
10441048
* -- LAPACK is a software package provided by Univ. of Tennessee, --
10451049
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
@@ -1077,7 +1081,7 @@ PROGRAM SCHKEE
10771081
CHARACTER*80 LINE
10781082
INTEGER I, I1, IC, INFO, ITMP, K, LENP, MAXTYP, NEWSD,
10791083
$ NK, NN, NPARMS, NRHS, NTYPES,
1080-
$ VERS_MAJOR, VERS_MINOR, VERS_PATCH
1084+
$ VERS_MAJOR, VERS_MINOR, VERS_PATCH, N_THREADS
10811085
REAL EPS, S1, S2, THRESH, THRSHN
10821086
* ..
10831087
* .. Local Arrays ..
@@ -1089,10 +1093,13 @@ PROGRAM SCHKEE
10891093
$ PVAL( MAXIN )
10901094
INTEGER INMIN( MAXIN ), INWIN( MAXIN ), INIBL( MAXIN ),
10911095
$ ISHFTS( MAXIN ), IACC22( MAXIN )
1092-
REAL A( NMAX*NMAX, NEED ), B( NMAX*NMAX, 5 ),
1093-
$ C( NCMAX*NCMAX, NCMAX*NCMAX ), D( NMAX, 12 ),
1094-
$ RESULT( 500 ), TAUA( NMAX ), TAUB( NMAX ),
1095-
$ WORK( LWORK ), X( 5*NMAX )
1096+
REAL D( NMAX, 12 ), RESULT( 500 ), TAUA( NMAX ),
1097+
$ TAUB( NMAX ), X( 5*NMAX )
1098+
* ..
1099+
* .. Allocatable Arrays ..
1100+
INTEGER AllocateStatus
1101+
REAL, DIMENSION(:), ALLOCATABLE :: WORK
1102+
REAL, DIMENSION(:,:), ALLOCATABLE :: A, B, C
10961103
* ..
10971104
* .. External Functions ..
10981105
LOGICAL LSAMEN
@@ -1132,7 +1139,18 @@ PROGRAM SCHKEE
11321139
* ..
11331140
* .. Data statements ..
11341141
DATA INTSTR / '0123456789' /
1135-
DATA IOLDSD / 0, 0, 0, 1 /
1142+
DATA IOLDSD / 0, 0, 0, 1 /
1143+
* ..
1144+
* .. Allocate memory dynamically ..
1145+
*
1146+
ALLOCATE ( A(NMAX*NMAX,NEED), STAT = AllocateStatus )
1147+
IF (AllocateStatus /= 0) STOP "*** Not enough memory ***"
1148+
ALLOCATE ( B(NMAX*NMAX,5), STAT = AllocateStatus )
1149+
IF (AllocateStatus /= 0) STOP "*** Not enough memory ***"
1150+
ALLOCATE ( C(NCMAX*NCMAX,NCMAX*NCMAX), STAT = AllocateStatus )
1151+
IF (AllocateStatus /= 0) STOP "*** Not enough memory ***"
1152+
ALLOCATE ( WORK(LWORK), STAT = AllocateStatus )
1153+
IF (AllocateStatus /= 0) STOP "*** Not enough memory ***"
11361154
* ..
11371155
* .. Executable Statements ..
11381156
*
@@ -1857,8 +1875,16 @@ PROGRAM SCHKEE
18571875
CALL ALAREQ( C3, NTYPES, DOTYPE, MAXTYP, NIN, NOUT )
18581876
CALL XLAENV( 1, 1 )
18591877
CALL XLAENV( 9, 25 )
1860-
IF( TSTERR )
1861-
$ CALL SERRST( 'SST', NOUT )
1878+
IF( TSTERR ) THEN
1879+
#if defined(_OPENMP)
1880+
N_THREADS = OMP_GET_NUM_THREADS()
1881+
CALL OMP_SET_NUM_THREADS(1)
1882+
#endif
1883+
CALL SERRST( 'SST', NOUT )
1884+
#if defined(_OPENMP)
1885+
CALL OMP_SET_NUM_THREADS(N_THREADS)
1886+
#endif
1887+
END IF
18621888
DO 290 I = 1, NPARMS
18631889
CALL XLAENV( 1, NBVAL( I ) )
18641890
CALL XLAENV( 2, NBMIN( I ) )
@@ -2440,6 +2466,11 @@ PROGRAM SCHKEE
24402466
WRITE( NOUT, FMT = 9994 )
24412467
S2 = SECOND( )
24422468
WRITE( NOUT, FMT = 9993 )S2 - S1
2469+
*
2470+
DEALLOCATE (A, STAT = AllocateStatus)
2471+
DEALLOCATE (B, STAT = AllocateStatus)
2472+
DEALLOCATE (C, STAT = AllocateStatus)
2473+
DEALLOCATE (WORK, STAT = AllocateStatus)
24432474
*
24442475
9999 FORMAT( / ' Execution not attempted due to input errors' )
24452476
9997 FORMAT( / / 1X, A3, ': NB =', I4, ', NBMIN =', I4, ', NX =', I4 )

0 commit comments

Comments
 (0)