Project not found: home:wekabe:cyrus-3.4

File unix_intrins.patch of Package ftnchek

--- ftnchek/symtab.h.orig	2020-09-10 10:41:56.801853900 +0200
+++ ftnchek/symtab.h	2020-10-11 16:12:58.368738058 +0200
@@ -619,6 +619,7 @@ typedef struct MVHead {	/* ModVarListHea
 #define I_1to4	(-5)		/* 1 to 4 arguments */
 #define I_2or3	(-6)		/* 2 or 3 arguments */
 #define I_2to4	(-7)		/* 2 to 4 arguments */
+#define I_3or4	(-8)		/* 3 or 4 arguments */
 
 			/* for intrins_flags field */
 
--- ftnchek/symtab.c.orig	2020-09-10 10:41:58.317890638 +0200
+++ ftnchek/symtab.c	2020-10-11 16:12:12.355649242 +0200
@@ -707,6 +707,14 @@ check_intrins_args(id, arg)
 	  }
 	  numargs_ok = (args_given >= 2 && args_given <= (opt_kind_allowed? 5: 4));
 	  break;
+	case I_3or4:			/* 3 or 4 arguments allowed */
+	  if (opt_kind_index == -1) {	/* no KIND keyword found */
+	    if (opt_kind_allowed && args_given == 5) /* last arg, no keyword */
+	      opt_kind_index = 1;
+	  }
+	  numargs_ok = (args_given == 3 || args_given == 4 ||
+	                (opt_kind_index != -1 && args_given == 5));
+	  break;
 	default:		/* positive numargs: must agree */
 	  if (opt_kind_index == -1) {	/* no KIND keyword found */
 	    if (opt_kind_allowed && args_given == (unsigned)(numargs+1)) /* last arg, no keyword */
--- ftnchek/intrins.c.2	2020-10-11 12:03:37.736445877 +0200
+++ ftnchek/intrins.c	2020-10-11 15:40:12.870234001 +0200
@@ -638,20 +638,46 @@ SYSTEM_CLOCK ([COUNT,              Obtai
 {"LOC",		1,I|R|D|C|Z|L|STR,type_INTEGER,	I_NONSTD|I_EXTRA,NULL},
 
 		/* Utility routines */
-{"EXIT",       I_0or1,	I,	type_SUBROUTINE,I_NONSTD|I_EXTRA,NULL},
+{"EXIT",	I_0or1,	I,	type_SUBROUTINE,I_NONSTD|I_EXTRA,NULL},
+{"LNBLNK",	1,	STR,	type_INTEGER,	I_NONSTD|I_EXTRA,NULL},
 #endif
 
 		/* Unix only.  These are a selected subset of the F77
 		   library routines listed in the USENIX manual section 3F.
 		 */
 #ifdef UNIX_INTRINSICS
+{"ACCESS",	2,	STR|I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
 {"ABORT",	1,	STR,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"ALARM",	I_2or3,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
 {"AND",		2,	I,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"BACKTRACE",	0,	0,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"CHDIR",	I_1or2,	STR|I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
+{"CHMOD",	I_2or3,	STR|I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
+{"COMPLEX",	2,	I|R|D,	type_COMPLEX,	I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
+{"CTIME",	I_1or2,	I|STR,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
+{"DTIME",	I_1or2,	R,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"ETIME",	I_1or2,	R,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"FDATE",	I_0or1,	STR,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"FGET",	I_1or2,	STR|I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
+{"FGETC",	I_2or3,	STR|I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
 {"FLUSH",	I_0or1,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"FNUM",	1,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"FPUT",	I_1or2,	STR|I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
+{"FPUTC",	I_2or3,	STR|I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
+{"FREE",	1,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"FSEEK",	I_3or4,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"FSTAT",	I_2or3,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"FTELL",	I_1or2,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"GETCWD",	I_1or2,	STR|I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
 		/* I, then STR not enforced in GETARG. */
 {"GETARG",	2,	I|STR,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
 {"GETENV",	2,	STR,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"GETGID",	0,	0,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"GETLOG",	1,	STR,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"GETPID",	0,	0,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"GETUID",	0,	0,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
 {"GMTIME",	2,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},/*2nd arg array(9)*/
+{"HOSTNM",	I_1or2,	STR|I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
 #ifdef IARGC_NO_ARG
 {"IARGC",	0,	0,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
 #else
@@ -661,9 +687,24 @@ SYSTEM_CLOCK ([COUNT,              Obtai
 {"IARGC",	I_0or1,	I,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
 #endif
 #endif
+{"IERRNO",	0,	0,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"INT2",	1,	I|R|D|C|Z,type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"INT8",	1,	I|R|D|C|Z,type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"ITIME",	1,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"LONG",	1,	I|R|D|C|Z,type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"ISATTY",	1,	I,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"ISNAN",	1,	R,	type_LOGICAL,	I_NONSTD|I_UNIX,NULL},
+{"KILL",	I_2or3,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"LINK",	I_2or3,	STR|I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
 {"LSHIFT",	2,	I,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"LSTAT",	I_2or3,	I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
 {"LTIME",	2,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},/*2nd arg array(9)*/
+{"MALLOC",	1,	I,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"MCLOCK",	0,	0,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"MCLOCK8",	0,	0,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
 {"OR",		2,	I,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"PERROR",	1,	STR,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"RENAME",	I_2or3,	STR|I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
 #ifdef RAND_NO_ARG	/*RAND() form*/
 {"IRAND",	0,	0,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
 {"RAND",	0,	0,	type_REAL,	I_NONSTD|I_UNIX,NULL},
@@ -677,9 +718,18 @@ SYSTEM_CLOCK ([COUNT,              Obtai
 #endif
 #endif
 {"RSHIFT",	2,	I,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"SECOND",	I_0or1,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"SIGNAL",	I_2or3,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"SLEEP",	1,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
 {"SRAND",	1,	I|R,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},/*AIX has this*/
+{"STAT",	I_2or3,	I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
+{"SYMLNK",	I_2or3,	STR|I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
 {"SYSTEM",	1,	STR,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
 {"TIME",	I_0or1,	I,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"TIME8",	I_0or1,	I,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
+{"TTYNAM",	I_1or2,	I|STR,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
+{"UMASK",	I_1or2,	I,	type_SUBROUTINE,I_NONSTD|I_UNIX,NULL},
+{"UNLINK",	I_1or2,	STR|I,	type_SUBROUTINE,I_MIXED_ARGS|I_NONSTD|I_UNIX,NULL},
 {"XOR",		2,	I,	type_INTEGER,	I_NONSTD|I_UNIX,NULL},
 #endif
 
openSUSE Build Service is sponsored by