27 static const char *
mess[] =
30 "LOGICAL UNIT CURRENTLY NOT OPENED FOR THE SOFTWARE",
31 "\"LEVEL\" VALUE OUTSIDE [0-2] RANGE",
33 "EXPLICIT CHANGE FOR MULTI-TASKING MODE",
34 "LOGICAL UNIT IS CURRENTLY OPENED",
35 "NOT ENOUGH SPACE WITHIN TABLES TO OPEN REQUESTED UNIT",
36 "INVALID \"STATUS\" FOR FORTRAN INSTRUCTION \"OPEN\"",
37 "INCOMPATIBLE VALUES GIVEN FOR \"LDNOMM\" AND \"CDSTTO\"",
38 "INCOMPATIBILITY BETWEEN \"STATUS\" 'NEW' OR 'OLD' AND FILE EXISTENCE OR NON-EXISTENCE",
39 "THE FILE IS NOT A LFI ONE, OR MAY NOT BE TREATED THROUGH THIS CONFIGURATION OR VERSION OF THE SOFTWARE",
40 "FILE NOT CLOSED AFTER A MODIFICATION",
41 "FILE HAS A \"STATUS\" 'OLD' BUT AN ERROR OCCURRED WHEN READING THE FIRST PHYSICAL RECORD OF FILE",
42 "FILE IS ALREADY OPEN FOR ANOTHER LFI LOGICAL UNIT",
43 "INCORRECT VALUE FOR INTEGER ARGUMENT",
44 "INCORRECT CHARACTER ARGUMENT",
45 "INCOHERENCE IN TABLES, FILE, INTERNAL CALLS, SOFTWARE",
46 "TOO MANY LOGICAL RECORDS TO STORE AN EXTRA ONE",
47 "A LOGICAL RECORD NAME FORMED ONLY WITH SPACES IS INVALID",
48 "FILE OPENED WITH \"STATUS\" SET TO 'SCRATCH', SO MAY NOT BE KEPT AT CLOSE TIME",
49 "NO LOGICAL RECORD WITH SUCH NAME FOUND WITHIN LOGICAL UNIT",
50 "REQUESTED LOGICAL RECORD IS LONGER (HAS MORE DATA) IN FILE",
51 "REQUESTED LOGICAL RECORD SHORTER (HAS LESS DATA) IN FILE",
52 "NO OR NO MORE \"NEXT\" RECORD TO READ",
53 "THE CHARACTER VARIABLE GIVEN AS ACTUAL OUTPUT ARGUMENT IS TOO SHORt TO STORE THE RECORD NAME",
54 "THE NEW NAME OF THE LOGICAL RECORD IS (ALREADY) USED FOR ANOTHER LOGICAL RECORD WITHIN THE FILE",
55 "NO OR NO MORE \"PREVIOUS\" LOGICAL RECORD TO READ",
56 "INSUFFICIENT CONTIGUOUS SPACE WITHIN TABLES TO TREAT THE \"multiple\" FILE REQUESTED",
57 "MULTIPLY FACTOR (OF ELEMENTARY PHYSICAL RECORD LENGTH) TOO BIG FOR THE CURRENT CONFIGURATION OF THE SOFTWARE",
58 "NOT ENOUGH SPACE WITHIN TABLES TO STORE THE MULTIPLY FACTOR TO BE ASSOCIATED TO LOGICAL UNIT",
59 "LOGICAL UNIT NUMBER INVALID FOR FORTRAN",
60 "LOGICAL UNIT HAS NO MULTIPLY FACTOR PREDEFINED",
86 typedef const char * argn_t;
95 #define buf_len (CLMESS_len - (buf - CLMESS)) 104 argn = va_arg (ap, argn_t);
107 argv = va_arg (ap, argv_t);
111 if (strcmp (argn,
"KREP") == 0)
114 buf +=
snprintf (buf, buf_len,
" */*/* %s - KREP=%lld", func, *argv.K);
118 if ((0 < im) && (im <
sizeof (
mess)))
119 if (
mess[im] != NULL)
124 buf +=
snprintf (buf, buf_len,
" ///// %s - ", func);
128 buf +=
snprintf (buf, buf_len,
", ");
130 buf +=
snprintf (buf, buf_len,
"%s=", argn);
136 for (; (len > 0) && (argv.C[len-1] ==
' '); len--);
137 buf +=
snprintf (buf, buf_len,
"'%*.*s'", (
int)len, (
int)len, argv.C);
140 buf +=
snprintf (buf, buf_len,
"%c", istrue (*argv.L) ?
'T' :
'F');
143 buf +=
snprintf (buf, buf_len,
"%f", *argv.P);
146 buf +=
snprintf (buf, buf_len,
"%lld", *argv.K);
149 lfi_abor (
"Unknown argument type : %s", argn);
163 lfi_mess_ (&IUNIT, CLMESS, CLMESS_len - buf_len);
167 fwrite (CLMESS, CLMESS_len - buf_len, 1, stderr);
168 fprintf (stderr,
"\n");
181 lfi_verb (lfi,
"LFIOUV",
"KNUMER",
KNUMER,
"LDNOMM", LDNOMM,
"CDNOMF", CDNOMF, CDNOMF_len,
"CDSTTO", CDSTTO, CDSTTO_len,
"LDERFA", LDERFA,
"LDIMST", LDIMST,
"KNIMES", KNIMES,
"KNBARP", KNBARP, NULL);
188 lfi_verb (lfi,
"LFICAS",
"KREP",
KREP,
"CDNOMA",
CDNOMA, CDNOMA_len,
"KLONG", KLONG,
"KPOSEX", KPOSEX, NULL);
190 lfi_verb (lfi,
"LFICAS",
"KNUMER",
KNUMER,
"LDAVAN", LDAVAN, NULL);
208 lfi_verb (lfi,
"LFIFER",
"KNUMER",
KNUMER,
"CDSTTC", CDSTTC, CDSTTC_len, NULL);
224 lfi_verb (lfi,
"LFINFO",
"KREP",
KREP,
"KLONG", KLONG,
"KPOSEX", KPOSEX, NULL);
244 lfi_verb (lfi,
"LFIVER",
"PVEROU", PVEROU,
"CDSENS", CDSENS, CDSENS_len, NULL);
251 lfi_verb (lfi,
"LFIOFM",
"KREP",
KREP,
"KFACTM", KFACTM,
"LDOUVR", LDOUVR, NULL);
271 lfi_verb (lfi,
"LFILAF",
"KNUMER",
KNUMER,
"LDTOUT", LDTOUT, NULL);
287 lfi_verb (lfi,
"LFINUM",
"KRANG", KRANG, NULL);
296 lfi_verb (lfi,
"LFISUP",
"KREP",
KREP,
"KLONUT", KLONUT, NULL);
305 lfi_verb (lfi,
"LFIOPT",
"KREP",
KREP,
"LDNOMM", LDNOMM,
"CDNOMF", CDNOMF, CDNOMF_len,
"CDSTTO", CDSTTO, CDSTTO_len,
"LDERFA", LDERFA,
"LDIMST", LDIMST,
"KNIMES", KNIMES, NULL);
316 lfi_verb (lfi,
"LFINMG",
"KNIVAU",
KNIVAU,
"KULOUT", KULOUT, NULL);
323 lfi_verb (lfi,
"LFICAP",
"KREP",
KREP,
"CDNOMA",
CDNOMA, CDNOMA_len,
"KLONG", KLONG,
"KPOSEX", KPOSEX, NULL);
325 lfi_verb (lfi,
"LFICAP",
"KNUMER",
KNUMER,
"LDRECU", LDRECU, NULL);
334 lfi_verb (lfi,
"LFIFRA",
"LDFRAN", LDFRAN, NULL);
352 lfi_verb (lfi,
"LFIERF",
"KNUMER",
KNUMER,
"LDERFA", LDERFA, NULL);
370 lfi_verb (lfi,
"LFIREN",
"KNUMER",
KNUMER,
"CDNOM1", CDNOM1, CDNOM1_len,
"CDNOM2", CDNOM2, CDNOM2_len, NULL);
382 lfi_verb (lfi,
"LFIPXF",
"KREP",
KREP,
"CDNOMA",
CDNOMA, CDNOMA_len,
"KLONG", KLONG, NULL);
384 lfi_verb (lfi,
"LFIPXF",
"KNUMER",
KNUMER,
"KNUMEX", KNUMEX,
"CDCFGX", CDCFGX, CDCFGX_len,
"KLAREX", KLAREX,
"KXCNEX", KXCNEX,
"KFACEX", KFACEX,
"KNUTRA", KNUTRA, NULL);
400 lfi_verb (lfi,
"LFINAF",
"KREP",
KREP,
"KNALDO", KNALDO,
"KNTROU", KNTROU,
"KNARES", KNARES,
"KNAMAX", KNAMAX, NULL);
409 lfi_verb (lfi,
"LFIOFD",
"KFACMD", KFACMD, NULL);
418 lfi_verb (lfi,
"LFIOMF",
"KREP",
KREP,
"KNIMES", KNIMES, NULL);
429 lfi_verb (lfi,
"LFIAFM",
"KNUMER",
KNUMER,
"KFACTM", KFACTM, NULL);
445 lfi_verb (lfi,
"LFIOSF",
"KREP",
KREP,
"LDIMST", LDIMST, NULL);
463 lfi_verb (lfi,
"LFIOEF",
"KREP",
KREP,
"LDERFA", LDERFA, NULL);
474 lfi_verb (lfi,
"LFIMST",
"KNUMER",
KNUMER,
"LDIMST", LDIMST, NULL);
483 lfi_verb (lfi,
"LFINIM",
"KNUMER",
KNUMER,
"KNIMES", KNIMES, NULL);
510 lfi_verb (lfi,
"LFIDEB",
"LDEBUG", LDEBUG, NULL);
517 lfi_verb (lfi,
"LFIOMG",
"KNIVAU",
KNIVAU,
"KULOUT", KULOUT, NULL);
528 lfi_verb (lfi,
"LFIFMD",
"KFACMD", KFACMD, NULL);
static void lfioeg_verb(int st, struct lfi_hndl_t *lfi, LFIOEG_ARGS_DECL)
static void lfinmg_verb(int st, struct lfi_hndl_t *lfi, LFINMG_ARGS_DECL)
static void lfilap_verb(int st, struct lfi_hndl_t *lfi, LFILAP_ARGS_DECL)
static void lficas_verb(int st, struct lfi_hndl_t *lfi, LFICAS_ARGS_DECL)
static void lfifmd_verb(int st, struct lfi_hndl_t *lfi, LFIFMD_ARGS_DECL)
static void lfinum_verb(int st, struct lfi_hndl_t *lfi, LFINUM_ARGS_DECL)
static void lfiopt_verb(int st, struct lfi_hndl_t *lfi, LFIOPT_ARGS_DECL)
static void lfiecr_verb(int st, struct lfi_hndl_t *lfi, LFIECR_ARGS_DECL)
static void lfiomf_verb(int st, struct lfi_hndl_t *lfi, LFIOMF_ARGS_DECL)
void lfi_mess_(const integer64 *, character *, character_len)
static void lfiini_verb(int st, struct lfi_hndl_t *lfi, LFIINI_ARGS_DECL)
static void lfipxf_verb(int st, struct lfi_hndl_t *lfi, LFIPXF_ARGS_DECL)
INTERFACE SUBROUTINE FACILO KNIVAU
static void lfiouv_verb(int st, struct lfi_hndl_t *lfi, LFIOUV_ARGS_DECL)
INTERFACE SUBROUTINE FACILO && KREP
static void lfinfo_verb(int st, struct lfi_hndl_t *lfi, LFINFO_ARGS_DECL)
static void lfinaf_verb(int st, struct lfi_hndl_t *lfi, LFINAF_ARGS_DECL)
static void lfinsg_verb(int st, struct lfi_hndl_t *lfi, LFINSG_ARGS_DECL)
static void lfisup_verb(int st, struct lfi_hndl_t *lfi, LFISUP_ARGS_DECL)
static void lfifer_verb(int st, struct lfi_hndl_t *lfi, LFIFER_ARGS_DECL)
static void lficfg_verb(int st, struct lfi_hndl_t *lfi, LFICFG_ARGS_DECL)
static void lfiofm_verb(int st, struct lfi_hndl_t *lfi, LFIOFM_ARGS_DECL)
static void lfiafm_verb(int st, struct lfi_hndl_t *lfi, LFIAFM_ARGS_DECL)
static const char * mess[]
static void lfilec_verb(int st, struct lfi_hndl_t *lfi, LFILEC_ARGS_DECL)
static void lfioef_verb(int st, struct lfi_hndl_t *lfi, LFIOEF_ARGS_DECL)
static void lfimst_verb(int st, struct lfi_hndl_t *lfi, LFIMST_ARGS_DECL)
void lfi_abor(const char *fmt,...)
static void lfisfm_verb(int st, struct lfi_hndl_t *lfi, LFISFM_ARGS_DECL)
static void lfiren_verb(int st, struct lfi_hndl_t *lfi, LFIREN_ARGS_DECL)
static void lfiver_verb(int st, struct lfi_hndl_t *lfi, LFIVER_ARGS_DECL)
static void lfipos_verb(int st, struct lfi_hndl_t *lfi, LFIPOS_ARGS_DECL)
int snprintf(char *str, size_t size, const char *format,...)
static void lfineg_verb(int st, struct lfi_hndl_t *lfi, LFINEG_ARGS_DECL)
static void lfiomg_verb(int st, struct lfi_hndl_t *lfi, LFIOMG_ARGS_DECL)
static void lfilaf_verb(int st, struct lfi_hndl_t *lfi, LFILAF_ARGS_DECL)
static void lficap_verb(int st, struct lfi_hndl_t *lfi, LFICAP_ARGS_DECL)
static void lfiosg_verb(int st, struct lfi_hndl_t *lfi, LFIOSG_ARGS_DECL)
static void lfideb_verb(int st, struct lfi_hndl_t *lfi, LFIDEB_ARGS_DECL)
INTERFACE SUBROUTINE FACILO KNUMER
static void lfifra_verb(int st, struct lfi_hndl_t *lfi, LFIFRA_ARGS_DECL)
static void lfiofd_verb(int st, struct lfi_hndl_t *lfi, LFIOFD_ARGS_DECL)
static integer64 iulout(lfi_hndl_t *lfi)
INTERFACE SUBROUTINE FACONO CDNOMA
static void lfista_verb(int st, struct lfi_hndl_t *lfi, LFISTA_ARGS_DECL)
static void lfierf_verb(int st, struct lfi_hndl_t *lfi, LFIERF_ARGS_DECL)
static void lfiosf_verb(int st, struct lfi_hndl_t *lfi, LFIOSF_ARGS_DECL)
static void lfilas_verb(int st, struct lfi_hndl_t *lfi, LFILAS_ARGS_DECL)
void lfi_verb(lfi_hndl_t *lfi, const char *func,...)
static void lfinim_verb(int st, struct lfi_hndl_t *lfi, LFINIM_ARGS_DECL)
void(* lfiomg)(LFIOMG_ARGS_DECL)