MIDAS
Loading...
Searching...
No Matches
cfortran.h File Reference
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
Include dependency graph for cfortran.h:

Go to the source code of this file.

Macros

#define _cfleft   1
 
#define _cfright
 
#define _cfleft_cfright   0
 
#define ANSI_C_preprocessor   _cfleft_cfright
 
#define _(A, B)   AB
 
#define _2(A, B)   AB
 
#define _3(A, B, C)   ABC
 
#define CF_SAME_NAMESPACE
 
#define CFC_(UN, LN)   LN /* Lowercase FORTRAN symbols. */
 
#define orig_fcallsc(UN, LN)   CFC_(UN,LN)
 
#define fcallsc(UN, LN)   orig_fcallsc(UN,LN)
 
#define preface_fcallsc(P, p, UN, LN)   CFC_(_(P,UN),_(p,LN))
 
#define append_fcallsc(P, p, UN, LN)   CFC_(_(UN,P),_(LN,p))
 
#define C_FUNCTION(UN, LN)   fcallsc(UN,LN)
 
#define FORTRAN_FUNCTION(UN, LN)   CFC_(UN,LN)
 
#define COMMON_BLOCK(UN, LN)   CFC_(UN,LN)
 
#define DOUBLE_PRECISION   double
 
#define FORTRAN_REAL   float
 
#define FLOATVVVVVVV_cfPP
 
#define VOIDP
 
#define COMMON_BLOCK_DEF(DEFINITION, NAME)   extern DEFINITION NAME
 
#define CF_NULL_PROTO
 
#define CF_DECLARE_GETARG
 
#define CF_SET_GETARG(ARGC, ARGV)
 
#define ACOMMA   ,
 
#define ACOLON   ;
 
#define _cfMIN(A, B)   (A<B?A:B)
 
#define FALSE   (1==0)
 
#define firstindexlength(A)   (sizeof(A[0])==1 ? 1 : (sizeof(A) / sizeof(A[0])) )
 
#define secondindexlength(A)   (sizeof(A[0])==1 ? sizeof(A) : sizeof(A[0]) )
 
#define C2FLOGICALV(A, I)    do {int __i; for(__i=0;__i<I;__i++) A[__i]=C2FLOGICAL(A[__i]); } while (FALSE)
 
#define F2CLOGICALV(A, I)    do {int __i; for(__i=0;__i<I;__i++) A[__i]=F2CLOGICAL(A[__i]); } while (FALSE)
 
#define C2FLOGICAL(L)   (L)
 
#define F2CLOGICAL(L)   (L)
 
#define C2FLOGICALV(A, I)
 
#define F2CLOGICALV(A, I)
 
#define _NUM_ELEMS   -1
 
#define _NUM_ELEM_ARG   -2
 
#define NUM_ELEMS(A)   A,_NUM_ELEMS
 
#define NUM_ELEM_ARG(B)   *_2(A,B),_NUM_ELEM_ARG
 
#define TERM_CHARS(A, B)   A,B
 
#define C2FCBSTR(CSTR, FSTR, DIM)
 
#define FCB2CSTR(FSTR, CSTR, DIM)
 
#define cfDEREFERENCE0
 
#define cfDEREFERENCE1   *
 
#define cfDEREFERENCE2   **
 
#define cfDEREFERENCE3   ***
 
#define cfDEREFERENCE4   ****
 
#define cfDEREFERENCE5   *****
 
#define cfelementsof(A, D)   (sizeof(A)/sizeof(_(cfDEREFERENCE,D)(A)))
 
#define ZTRINGV_NUM(I)   I
 
#define ZTRINGV_ARGFP(I)   (*(_2(A,I))) /* Undocumented. For PINT, etc. */
 
#define ZTRINGV_ARGF(I)   _2(A,I)
 
#define ZTRINGV_ARGS(I)   _2(B,I)
 
#define PBYTE_cfVP(A, B)   PINT_cfVP(A,B)
 
#define PDOUBLE_cfVP(A, B)
 
#define PFLOAT_cfVP(A, B)
 
#define PINT_cfVP(A, B)
 
#define PLOGICAL_cfVP(A, B)   int *B; /* Returning LOGICAL in FUNn and SUBn */
 
#define PLONG_cfVP(A, B)   PINT_cfVP(A,B)
 
#define PSHORT_cfVP(A, B)   PINT_cfVP(A,B)
 
#define VCF_INT_S(T, A, B)   _(T,VVVVVVV_cfTYPE) B = A;
 
#define VCF_INT_F(T, A, B)   _(T,_cfVCF)(A,B)
 
#define BYTE_cfVCF(A, B)
 
#define DOUBLE_cfVCF(A, B)
 
#define FLOAT_cfVCF(A, B)
 
#define INT_cfVCF(A, B)
 
#define LOGICAL_cfVCF(A, B)
 
#define LONG_cfVCF(A, B)
 
#define SHORT_cfVCF(A, B)
 
#define VCF(TN, I)   _Icf4(4,V,TN,_(A,I),_(B,I),F)
 
#define VVCF(TN, AI, BI)   _Icf4(4,V,TN,AI,BI,S)
 
#define INT_cfV(T, A, B, F)   _(VCF_INT_,F)(T,A,B)
 
#define INTV_cfV(T, A, B, F)
 
#define INTVV_cfV(T, A, B, F)
 
#define INTVVV_cfV(T, A, B, F)
 
#define INTVVVV_cfV(T, A, B, F)
 
#define INTVVVVV_cfV(T, A, B, F)
 
#define INTVVVVVV_cfV(T, A, B, F)
 
#define INTVVVVVVV_cfV(T, A, B, F)
 
#define PINT_cfV( T, A, B, F)   _(T,_cfVP)(A,B)
 
#define PVOID_cfV( T, A, B, F)
 
#define ROUTINE_cfV(T, A, B, F)
 
#define SIMPLE_cfV(T, A, B, F)
 
#define STRING_cfV(T, A, B, F)   struct {unsigned int clen, flen;} B;
 
#define STRINGV_cfV(T, A, B, F)   struct {char *s, *fs; unsigned flen;} B;
 
#define PSTRING_cfV(T, A, B, F)   int B;
 
#define PSTRINGV_cfV(T, A, B, F)   struct{char *fs; unsigned int sizeofA,flen;}B;
 
#define ZTRINGV_cfV(T, A, B, F)   STRINGV_cfV(T,A,B,F)
 
#define PZTRINGV_cfV(T, A, B, F)   PSTRINGV_cfV(T,A,B,F)
 
#define ACF(NAME, TN, AI, I)   _(TN,_cfSTR)(4,A,NAME,I,AI,_(B,I),0)
 
#define DEFAULT_cfA(M, I, A, B)
 
#define LOGICAL_cfA(M, I, A, B)   B=C2FLOGICAL(B);
 
#define PLOGICAL_cfA(M, I, A, B)   A=C2FLOGICAL(A);
 
#define STRING_cfA(M, I, A, B)   STRING_cfC(M,I,A,B,sizeof(A))
 
#define PSTRING_cfA(M, I, A, B)   PSTRING_cfC(M,I,A,B,sizeof(A))
 
#define AATRINGV_cfA( A, B, sA, filA, silA)    (B.s=(char *)malloc((sA)-(filA)),B.fs=c2fstrv(A,B.s,(B.flen=(silA)-1)+1,(sA)));
 
#define APATRINGV_cfA( A, B, sA, filA, silA)    B.fs=c2fstrv(A,A,(B.flen=(silA)-1)+1,B.sizeofA=(sA));
 
#define STRINGV_cfA(M, I, A, B)    AATRINGV_cfA((char *)A,B,sizeof(A),firstindexlength(A),secondindexlength(A))
 
#define PSTRINGV_cfA(M, I, A, B)    APATRINGV_cfA((char *)A,B,sizeof(A),firstindexlength(A),secondindexlength(A))
 
#define ZTRINGV_cfA(M, I, A, B)
 
#define PZTRINGV_cfA(M, I, A, B)
 
#define PBYTE_cfAAP(A, B)   &A
 
#define PDOUBLE_cfAAP(A, B)   &A
 
#define PFLOAT_cfAAP(A, B)   FLOATVVVVVVV_cfPP &A
 
#define PINT_cfAAP(A, B)   &A
 
#define PLOGICAL_cfAAP(A, B)   B= &A /* B used to keep a common W table. */
 
#define PLONG_cfAAP(A, B)   &A
 
#define PSHORT_cfAAP(A, B)   &A
 
#define AACF(TN, AI, I, C)   _SEP_(TN,C,COMMA) _Icf(3,AA,TN,AI,_(B,I))
 
#define INT_cfAA(T, A, B)   &B
 
#define INTV_cfAA(T, A, B)   _(T,VVVVVV_cfPP) A
 
#define INTVV_cfAA(T, A, B)   _(T,VVVVV_cfPP) A[0]
 
#define INTVVV_cfAA(T, A, B)   _(T,VVVV_cfPP) A[0][0]
 
#define INTVVVV_cfAA(T, A, B)   _(T,VVV_cfPP) A[0][0][0]
 
#define INTVVVVV_cfAA(T, A, B)   _(T,VV_cfPP) A[0][0][0][0]
 
#define INTVVVVVV_cfAA(T, A, B)   _(T,V_cfPP) A[0][0][0][0][0]
 
#define INTVVVVVVV_cfAA(T, A, B)   _(T,_cfPP) A[0][0][0][0][0][0]
 
#define PINT_cfAA(T, A, B)   _(T,_cfAAP)(A,B)
 
#define PVOID_cfAA(T, A, B)   (void *) A
 
#define ROUTINE_cfAA(T, A, B)   (void(*)(CF_NULL_PROTO))A
 
#define STRING_cfAA(T, A, B)   STRING_cfCC(T,A,B)
 
#define PSTRING_cfAA(T, A, B)   PSTRING_cfCC(T,A,B)
 
#define STRINGV_cfAA(T, A, B)   B.fs
 
#define PSTRINGV_cfAA(T, A, B)   STRINGV_cfAA(T,A,B)
 
#define ZTRINGV_cfAA(T, A, B)   STRINGV_cfAA(T,A,B)
 
#define PZTRINGV_cfAA(T, A, B)   STRINGV_cfAA(T,A,B)
 
#define JCF(TN, I)   _(TN,_cfSTR)(1,J,_(B,I), 0,0,0,0)
 
#define DEFAULT_cfJ(B)
 
#define LOGICAL_cfJ(B)   DEFAULT_cfJ(B)
 
#define PLOGICAL_cfJ(B)   DEFAULT_cfJ(B)
 
#define STRING_cfJ(B)   ,B.flen
 
#define PSTRING_cfJ(B)   ,B
 
#define STRINGV_cfJ(B)   STRING_cfJ(B)
 
#define PSTRINGV_cfJ(B)   STRING_cfJ(B)
 
#define ZTRINGV_cfJ(B)   STRING_cfJ(B)
 
#define PZTRINGV_cfJ(B)   STRING_cfJ(B)
 
#define KCF(TN, I)   _(TN,_cfSTR)(1,KK,_(B,I), 0,0,0,0)
 
#define DEFAULT_cfKK(B)
 
#define LOGICAL_cfKK(B)   DEFAULT_cfKK(B)
 
#define PLOGICAL_cfKK(B)   DEFAULT_cfKK(B)
 
#define STRING_cfKK(B)   , unsigned B
 
#define PSTRING_cfKK(B)   STRING_cfKK(B)
 
#define STRINGV_cfKK(B)   STRING_cfKK(B)
 
#define PSTRINGV_cfKK(B)   STRING_cfKK(B)
 
#define ZTRINGV_cfKK(B)   STRING_cfKK(B)
 
#define PZTRINGV_cfKK(B)   STRING_cfKK(B)
 
#define WCF(TN, AN, I)   _(TN,_cfSTR)(2,W,AN,_(B,I), 0,0,0)
 
#define DEFAULT_cfW(A, B)
 
#define LOGICAL_cfW(A, B)
 
#define PLOGICAL_cfW(A, B)   *B=F2CLOGICAL(*B);
 
#define STRING_cfW(A, B)   (A[B.clen]!='\0'?A[B.clen]='\0':0); /* A?="constnt" */
 
#define PSTRING_cfW(A, B)   kill_trailing(A,' ');
 
#define STRINGV_cfW(A, B)   free(B.s);
 
#define PSTRINGV_cfW(A, B)
 
#define ZTRINGV_cfW(A, B)   STRINGV_cfW(A,B)
 
#define PZTRINGV_cfW(A, B)   PSTRINGV_cfW(A,B)
 
#define NCF(TN, I, C)   _SEP_(TN,C,COMMA) _Icf(2,N,TN,_(A,I),0)
 
#define NNCF(TN, I, C)   UUCF(TN,I,C)
 
#define NNNCF(TN, I, C)   _SEP_(TN,C,COLON) _Icf(2,N,TN,_(A,I),0)
 
#define INT_cfN(T, A)   _(T,VVVVVVV_cfTYPE) * A
 
#define INTV_cfN(T, A)   _(T,VVVVVV_cfTYPE) * A
 
#define INTVV_cfN(T, A)   _(T,VVVVV_cfTYPE) * A
 
#define INTVVV_cfN(T, A)   _(T,VVVV_cfTYPE) * A
 
#define INTVVVV_cfN(T, A)   _(T,VVV_cfTYPE) * A
 
#define INTVVVVV_cfN(T, A)   _(T,VV_cfTYPE) * A
 
#define INTVVVVVV_cfN(T, A)   _(T,V_cfTYPE) * A
 
#define INTVVVVVVV_cfN(T, A)   _(T,_cfTYPE) * A
 
#define PINT_cfN(T, A)   _(T,_cfTYPE) * A
 
#define PVOID_cfN(T, A)   void * A
 
#define ROUTINE_cfN(T, A)   void ( *A)(CF_NULL_PROTO)
 
#define STRING_cfN(T, A)   char * A
 
#define STRINGV_cfN(T, A)   char * A
 
#define PSTRING_cfN(T, A)   STRING_cfN(T,A) /* CRAY insists on arg.'s here. */
 
#define PNSTRING_cfN(T, A)   STRING_cfN(T,A) /* CRAY insists on arg.'s here. */
 
#define PPSTRING_cfN(T, A)   STRING_cfN(T,A) /* CRAY insists on arg.'s here. */
 
#define PSTRINGV_cfN(T, A)   STRINGV_cfN(T,A)
 
#define ZTRINGV_cfN(T, A)   STRINGV_cfN(T,A)
 
#define PZTRINGV_cfN(T, A)   PSTRINGV_cfN(T,A)
 
#define MAX_PREPRO_ARGS   99
 
#define ABSOFT_cf1(T0)
 
#define ABSOFT_cf2(T0)
 
#define ABSOFT_cf3(T0)
 
#define _Z
 
#define CFARGT14S(S, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE)
 
#define CFARGT14FS(F, S, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE)
 
#define CFARGT14(F, S, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE)
 
#define CFARGT20(Z, S, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, TG, TH, TI, TJ, TK)
 
#define CFARGTA14(F, S, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC, AD, AE)
 
#define CFARGTA20(Z, S, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, TG, TH, TI, TJ, TK, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC, AD, AE, AF, AG, AH, AI, AJ, AK)
 
#define PROTOCCALLSFSUB1(UN, LN, T1)    PROTOCCALLSFSUB14(UN,LN,T1,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFSUB2(UN, LN, T1, T2)    PROTOCCALLSFSUB14(UN,LN,T1,T2,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFSUB3(UN, LN, T1, T2, T3)    PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFSUB4(UN, LN, T1, T2, T3, T4)    PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFSUB5(UN, LN, T1, T2, T3, T4, T5)    PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFSUB6(UN, LN, T1, T2, T3, T4, T5, T6)    PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFSUB7(UN, LN, T1, T2, T3, T4, T5, T6, T7)    PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFSUB8(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8)    PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFSUB9(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9)    PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFSUB10(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA)    PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFSUB11(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB)    PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFSUB12(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC)    PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0)
 
#define PROTOCCALLSFSUB13(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD)    PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0)
 
#define PROTOCCALLSFSUB15(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF)    PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,CF_0,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFSUB16(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, TG)    PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFSUB17(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, TG, TH)    PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFSUB18(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, TG, TH, TI)    PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,CF_0,CF_0)
 
#define PROTOCCALLSFSUB19(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, TG, TH, TI, TJ)    PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,CF_0)
 
#define FCALLSC_QUALIFIER
 
#define CFextern   extern
 
#define PROTOCCALLSFSUB0(UN, LN)   CFextern void FCALLSC_QUALIFIER CFC_(UN,LN)();
 
#define PROTOCCALLSFSUB14(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE)    CFextern void FCALLSC_QUALIFIER CFC_(UN,LN)( CFARGT14(NCF,KCF,_Z,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) );
 
#define PROTOCCALLSFSUB20(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, TG, TH, TI, TJ, TK)    CFextern void FCALLSC_QUALIFIER CFC_(UN,LN)( CFARGT20(NCF,KCF,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK) );
 
#define CCALLSFSUB1(UN, LN, T1, A1)    CCALLSFSUB5 (UN,LN,T1,CF_0,CF_0,CF_0,CF_0,A1,0,0,0,0)
 
#define CCALLSFSUB2(UN, LN, T1, T2, A1, A2)    CCALLSFSUB5 (UN,LN,T1,T2,CF_0,CF_0,CF_0,A1,A2,0,0,0)
 
#define CCALLSFSUB3(UN, LN, T1, T2, T3, A1, A2, A3)    CCALLSFSUB5 (UN,LN,T1,T2,T3,CF_0,CF_0,A1,A2,A3,0,0)
 
#define CCALLSFSUB4(UN, LN, T1, T2, T3, T4, A1, A2, A3, A4)    CCALLSFSUB5 (UN,LN,T1,T2,T3,T4,CF_0,A1,A2,A3,A4,0)
 
#define CCALLSFSUB5(UN, LN, T1, T2, T3, T4, T5, A1, A2, A3, A4, A5)    CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,0,0,0,0,0)
 
#define CCALLSFSUB6(UN, LN, T1, T2, T3, T4, T5, T6, A1, A2, A3, A4, A5, A6)    CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,0,0,0,0)
 
#define CCALLSFSUB7(UN, LN, T1, T2, T3, T4, T5, T6, T7, A1, A2, A3, A4, A5, A6, A7)    CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,0,0,0)
 
#define CCALLSFSUB8(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, A1, A2, A3, A4, A5, A6, A7, A8)    CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,0,0)
 
#define CCALLSFSUB9(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, A1, A2, A3, A4, A5, A6, A7, A8, A9)    CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,0)
 
#define CCALLSFSUB10(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA)    CCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,0,0,0,0)
 
#define CCALLSFSUB11(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB)    CCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,0,0,0)
 
#define CCALLSFSUB12(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC)    CCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,0,0)
 
#define CCALLSFSUB13(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC, AD)    CCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,0)
 
#define CPPPROTOCLSFSUB0(UN, LN)    PROTOCCALLSFSUB0(UN,LN)
 
#define CPPPROTOCLSFSUB14(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE)    PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)
 
#define CPPPROTOCLSFSUB20(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, TG, TH, TI, TJ, TK)    PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK)
 
#define CCALLSFSUB0(UN, LN)   do{CPPPROTOCLSFSUB0(UN,LN) CFC_(UN,LN)();}while(FALSE)
 
#define CCALLSFSUB14(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC, AD, AE)
 
#define CCALLSFSUB15(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC, AD, AE, AF)    CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,CF_0,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,0,0,0,0,0)
 
#define CCALLSFSUB16(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, TG, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC, AD, AE, AF, AG)    CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,0,0,0,0)
 
#define CCALLSFSUB17(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, TG, TH, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC, AD, AE, AF, AG, AH)    CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,0,0,0)
 
#define CCALLSFSUB18(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, TG, TH, TI, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC, AD, AE, AF, AG, AH, AI)    CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,AI,0,0)
 
#define CCALLSFSUB19(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, TG, TH, TI, TJ, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC, AD, AE, AF, AG, AH, AI, AJ)    CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,0)
 
#define CCALLSFSUB20(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, TG, TH, TI, TJ, TK, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC, AD, AE, AF, AG, AH, AI, AJ, AK)
 
#define MAX_LEN_FORTRAN_FUNCTION_STRING   0x4FE
 
#define CFORTRAN_NON_CHAR   0x7F
 
#define _SEP_(TN, C, COMMA)   _(__SEP_,C)(TN,COMMA)
 
#define __SEP_0(TN, COMMA)
 
#define __SEP_1(TN, COMMA)   _Icf(2,SEP,TN,COMMA,0)
 
#define INT_cfSEP(T, B)   _(A,B)
 
#define INTV_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define INTVV_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define INTVVV_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define INTVVVV_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define INTVVVVV_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define INTVVVVVV_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define INTVVVVVVV_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define PINT_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define PVOID_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define ROUTINE_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define SIMPLE_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define VOID_cfSEP(T, B)   INT_cfSEP(T,B) /* For FORTRAN calls C subr.s. */
 
#define STRING_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define STRINGV_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define PSTRING_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define PSTRINGV_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define PNSTRING_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define PPSTRING_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define ZTRINGV_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define PZTRINGV_cfSEP(T, B)   INT_cfSEP(T,B)
 
#define INTEGER_BYTE   signed char /* default */
 
#define BYTEVVVVVVV_cfTYPE   INTEGER_BYTE
 
#define DOUBLEVVVVVVV_cfTYPE   DOUBLE_PRECISION
 
#define FLOATVVVVVVV_cfTYPE   FORTRAN_REAL
 
#define INTVVVVVVV_cfTYPE   int
 
#define LOGICALVVVVVVV_cfTYPE   int
 
#define LONGVVVVVVV_cfTYPE   long
 
#define SHORTVVVVVVV_cfTYPE   short
 
#define PBYTE_cfTYPE   INTEGER_BYTE
 
#define PDOUBLE_cfTYPE   DOUBLE_PRECISION
 
#define PFLOAT_cfTYPE   FORTRAN_REAL
 
#define PINT_cfTYPE   int
 
#define PLOGICAL_cfTYPE   int
 
#define PLONG_cfTYPE   long
 
#define PSHORT_cfTYPE   short
 
#define CFARGS0(A, T, V, W, X, Y, Z)   _3(T,_cf,A)
 
#define CFARGS1(A, T, V, W, X, Y, Z)   _3(T,_cf,A)(V)
 
#define CFARGS2(A, T, V, W, X, Y, Z)   _3(T,_cf,A)(V,W)
 
#define CFARGS3(A, T, V, W, X, Y, Z)   _3(T,_cf,A)(V,W,X)
 
#define CFARGS4(A, T, V, W, X, Y, Z)   _3(T,_cf,A)(V,W,X,Y)
 
#define CFARGS5(A, T, V, W, X, Y, Z)   _3(T,_cf,A)(V,W,X,Y,Z)
 
#define _Icf(N, T, I, X, Y)   _(I,_cfINT)(N,T,I,X,Y,0)
 
#define _Icf4(N, T, I, X, Y, Z)   _(I,_cfINT)(N,T,I,X,Y,Z)
 
#define BYTE_cfINT(N, A, B, X, Y, Z)   DOUBLE_cfINT(N,A,B,X,Y,Z)
 
#define DOUBLE_cfINT(N, A, B, X, Y, Z)   _(CFARGS,N)(A,INT,B,X,Y,Z,0)
 
#define FLOAT_cfINT(N, A, B, X, Y, Z)   DOUBLE_cfINT(N,A,B,X,Y,Z)
 
#define INT_cfINT(N, A, B, X, Y, Z)   DOUBLE_cfINT(N,A,B,X,Y,Z)
 
#define LOGICAL_cfINT(N, A, B, X, Y, Z)   DOUBLE_cfINT(N,A,B,X,Y,Z)
 
#define LONG_cfINT(N, A, B, X, Y, Z)   DOUBLE_cfINT(N,A,B,X,Y,Z)
 
#define SHORT_cfINT(N, A, B, X, Y, Z)   DOUBLE_cfINT(N,A,B,X,Y,Z)
 
#define PBYTE_cfINT(N, A, B, X, Y, Z)   PDOUBLE_cfINT(N,A,B,X,Y,Z)
 
#define PDOUBLE_cfINT(N, A, B, X, Y, Z)   _(CFARGS,N)(A,PINT,B,X,Y,Z,0)
 
#define PFLOAT_cfINT(N, A, B, X, Y, Z)   PDOUBLE_cfINT(N,A,B,X,Y,Z)
 
#define PINT_cfINT(N, A, B, X, Y, Z)   PDOUBLE_cfINT(N,A,B,X,Y,Z)
 
#define PLOGICAL_cfINT(N, A, B, X, Y, Z)   PDOUBLE_cfINT(N,A,B,X,Y,Z)
 
#define PLONG_cfINT(N, A, B, X, Y, Z)   PDOUBLE_cfINT(N,A,B,X,Y,Z)
 
#define PSHORT_cfINT(N, A, B, X, Y, Z)   PDOUBLE_cfINT(N,A,B,X,Y,Z)
 
#define BYTEV_cfINT(N, A, B, X, Y, Z)   DOUBLEV_cfINT(N,A,B,X,Y,Z)
 
#define BYTEVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVV_cfINT(N,A,B,X,Y,Z)
 
#define BYTEVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVV_cfINT(N,A,B,X,Y,Z)
 
#define BYTEVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)
 
#define BYTEVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define BYTEVVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define BYTEVVVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define DOUBLEV_cfINT(N, A, B, X, Y, Z)   _(CFARGS,N)(A,INTV,B,X,Y,Z,0)
 
#define DOUBLEVV_cfINT(N, A, B, X, Y, Z)   _(CFARGS,N)(A,INTVV,B,X,Y,Z,0)
 
#define DOUBLEVVV_cfINT(N, A, B, X, Y, Z)   _(CFARGS,N)(A,INTVVV,B,X,Y,Z,0)
 
#define DOUBLEVVVV_cfINT(N, A, B, X, Y, Z)   _(CFARGS,N)(A,INTVVVV,B,X,Y,Z,0)
 
#define DOUBLEVVVVV_cfINT(N, A, B, X, Y, Z)   _(CFARGS,N)(A,INTVVVVV,B,X,Y,Z,0)
 
#define DOUBLEVVVVVV_cfINT(N, A, B, X, Y, Z)   _(CFARGS,N)(A,INTVVVVVV,B,X,Y,Z,0)
 
#define DOUBLEVVVVVVV_cfINT(N, A, B, X, Y, Z)   _(CFARGS,N)(A,INTVVVVVVV,B,X,Y,Z,0)
 
#define FLOATV_cfINT(N, A, B, X, Y, Z)   DOUBLEV_cfINT(N,A,B,X,Y,Z)
 
#define FLOATVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVV_cfINT(N,A,B,X,Y,Z)
 
#define FLOATVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVV_cfINT(N,A,B,X,Y,Z)
 
#define FLOATVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)
 
#define FLOATVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define FLOATVVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define FLOATVVVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define INTV_cfINT(N, A, B, X, Y, Z)   DOUBLEV_cfINT(N,A,B,X,Y,Z)
 
#define INTVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVV_cfINT(N,A,B,X,Y,Z)
 
#define INTVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVV_cfINT(N,A,B,X,Y,Z)
 
#define INTVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)
 
#define INTVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define INTVVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define INTVVVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define LOGICALV_cfINT(N, A, B, X, Y, Z)   DOUBLEV_cfINT(N,A,B,X,Y,Z)
 
#define LOGICALVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVV_cfINT(N,A,B,X,Y,Z)
 
#define LOGICALVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVV_cfINT(N,A,B,X,Y,Z)
 
#define LOGICALVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)
 
#define LOGICALVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define LOGICALVVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define LOGICALVVVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define LONGV_cfINT(N, A, B, X, Y, Z)   DOUBLEV_cfINT(N,A,B,X,Y,Z)
 
#define LONGVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVV_cfINT(N,A,B,X,Y,Z)
 
#define LONGVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVV_cfINT(N,A,B,X,Y,Z)
 
#define LONGVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)
 
#define LONGVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define LONGVVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define LONGVVVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define SHORTV_cfINT(N, A, B, X, Y, Z)   DOUBLEV_cfINT(N,A,B,X,Y,Z)
 
#define SHORTVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVV_cfINT(N,A,B,X,Y,Z)
 
#define SHORTVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVV_cfINT(N,A,B,X,Y,Z)
 
#define SHORTVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)
 
#define SHORTVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define SHORTVVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define SHORTVVVVVVV_cfINT(N, A, B, X, Y, Z)   DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)
 
#define PVOID_cfINT(N, A, B, X, Y, Z)   _(CFARGS,N)(A,B,B,X,Y,Z,0)
 
#define ROUTINE_cfINT(N, A, B, X, Y, Z)   PVOID_cfINT(N,A,B,X,Y,Z)
 
#define SIMPLE_cfINT(N, A, B, X, Y, Z)   PVOID_cfINT(N,A,B,X,Y,Z)
 
#define VOID_cfINT(N, A, B, X, Y, Z)   PVOID_cfINT(N,A,B,X,Y,Z)
 
#define STRING_cfINT(N, A, B, X, Y, Z)   PVOID_cfINT(N,A,B,X,Y,Z)
 
#define STRINGV_cfINT(N, A, B, X, Y, Z)   PVOID_cfINT(N,A,B,X,Y,Z)
 
#define PSTRING_cfINT(N, A, B, X, Y, Z)   PVOID_cfINT(N,A,B,X,Y,Z)
 
#define PSTRINGV_cfINT(N, A, B, X, Y, Z)   PVOID_cfINT(N,A,B,X,Y,Z)
 
#define PNSTRING_cfINT(N, A, B, X, Y, Z)   PVOID_cfINT(N,A,B,X,Y,Z)
 
#define PPSTRING_cfINT(N, A, B, X, Y, Z)   PVOID_cfINT(N,A,B,X,Y,Z)
 
#define ZTRINGV_cfINT(N, A, B, X, Y, Z)   PVOID_cfINT(N,A,B,X,Y,Z)
 
#define PZTRINGV_cfINT(N, A, B, X, Y, Z)   PVOID_cfINT(N,A,B,X,Y,Z)
 
#define CF_0_cfINT(N, A, B, X, Y, Z)
 
#define UCF(TN, I, C)   _SEP_(TN,C,COMMA) _Icf(2,U,TN,_(A,I),0)
 
#define UUCF(TN, I, C)   _SEP_(TN,C,COMMA) _SEP_(TN,1,I)
 
#define UUUCF(TN, I, C)   _SEP_(TN,C,COLON) _Icf(2,U,TN,_(A,I),0)
 
#define INT_cfU(T, A)   _(T,VVVVVVV_cfTYPE) A
 
#define INTV_cfU(T, A)   _(T,VVVVVV_cfTYPE) * A
 
#define INTVV_cfU(T, A)   _(T,VVVVV_cfTYPE) * A
 
#define INTVVV_cfU(T, A)   _(T,VVVV_cfTYPE) * A
 
#define INTVVVV_cfU(T, A)   _(T,VVV_cfTYPE) * A
 
#define INTVVVVV_cfU(T, A)   _(T,VV_cfTYPE) * A
 
#define INTVVVVVV_cfU(T, A)   _(T,V_cfTYPE) * A
 
#define INTVVVVVVV_cfU(T, A)   _(T,_cfTYPE) * A
 
#define PINT_cfU(T, A)   _(T,_cfTYPE) * A
 
#define PVOID_cfU(T, A)   void *A
 
#define ROUTINE_cfU(T, A)   void (*A)(CF_NULL_PROTO)
 
#define VOID_cfU(T, A)   void A /* Needed for C calls FORTRAN sub.s. */
 
#define STRING_cfU(T, A)   char *A /* via VOID and wrapper. */
 
#define STRINGV_cfU(T, A)   char *A
 
#define PSTRING_cfU(T, A)   char *A
 
#define PSTRINGV_cfU(T, A)   char *A
 
#define ZTRINGV_cfU(T, A)   char *A
 
#define PZTRINGV_cfU(T, A)   char *A
 
#define INT_cfUU(T, A)   _(T,VVVVVVV_cfTYPE) A
 
#define VOID_cfUU(T, A)   /* Needed for FORTRAN calls C sub.s. */
 
#define STRING_cfUU(T, A)   char *A
 
#define BYTE_cfPU(A)   CFextern INTEGER_BYTE FCALLSC_QUALIFIER A
 
#define DOUBLE_cfPU(A)   CFextern DOUBLE_PRECISION FCALLSC_QUALIFIER A
 
#define FLOAT_cfPU(A)   CFextern FORTRAN_REAL FCALLSC_QUALIFIER A
 
#define INT_cfPU(A)   CFextern int FCALLSC_QUALIFIER A
 
#define LOGICAL_cfPU(A)   CFextern int FCALLSC_QUALIFIER A
 
#define LONG_cfPU(A)   CFextern long FCALLSC_QUALIFIER A
 
#define SHORT_cfPU(A)   CFextern short FCALLSC_QUALIFIER A
 
#define STRING_cfPU(A)   CFextern void FCALLSC_QUALIFIER A
 
#define VOID_cfPU(A)   CFextern void FCALLSC_QUALIFIER A
 
#define BYTE_cfE   INTEGER_BYTE A0;
 
#define DOUBLE_cfE   DOUBLE_PRECISION A0;
 
#define FLOAT_cfE   FORTRAN_REAL A0;
 
#define INT_cfE   int A0;
 
#define LOGICAL_cfE   int A0;
 
#define LONG_cfE   long A0;
 
#define SHORT_cfE   short A0;
 
#define VOID_cfE
 
#define STRING_cfE
 
#define INT_cfGZ(T, UN, LN)   A0=CFC_(UN,LN)(
 
#define VOID_cfGZ(T, UN, LN)   CFC_(UN,LN)(
 
#define STRING_cfGZ(T, UN, LN)   CFC_(UN,LN)( A0,MAX_LEN_FORTRAN_FUNCTION_STRING
 
#define INT_cfG(T, UN, LN)   INT_cfGZ(T,UN,LN)
 
#define VOID_cfG(T, UN, LN)   VOID_cfGZ(T,UN,LN)
 
#define STRING_cfG(T, UN, LN)   STRING_cfGZ(T,UN,LN), /*, is only diff. from _cfG */
 
#define BYTEVVVVVVV_cfPP
 
#define INTVVVVVVV_cfPP   /* These complement FLOATVVVVVVV_cfPP. */
 
#define DOUBLEVVVVVVV_cfPP
 
#define LOGICALVVVVVVV_cfPP
 
#define LONGVVVVVVV_cfPP
 
#define SHORTVVVVVVV_cfPP
 
#define PBYTE_cfPP
 
#define PINT_cfPP
 
#define PDOUBLE_cfPP
 
#define PLOGICAL_cfPP
 
#define PLONG_cfPP
 
#define PSHORT_cfPP
 
#define PFLOAT_cfPP   FLOATVVVVVVV_cfPP
 
#define BCF(TN, AN, C)   _SEP_(TN,C,COMMA) _Icf(2,B,TN,AN,0)
 
#define INT_cfB(T, A)   (_(T,VVVVVVV_cfTYPE)) A
 
#define INTV_cfB(T, A)   A
 
#define INTVV_cfB(T, A)   (A)[0]
 
#define INTVVV_cfB(T, A)   (A)[0][0]
 
#define INTVVVV_cfB(T, A)   (A)[0][0][0]
 
#define INTVVVVV_cfB(T, A)   (A)[0][0][0][0]
 
#define INTVVVVVV_cfB(T, A)   (A)[0][0][0][0][0]
 
#define INTVVVVVVV_cfB(T, A)   (A)[0][0][0][0][0][0]
 
#define PINT_cfB(T, A)   _(T,_cfPP)&A
 
#define STRING_cfB(T, A)   (char *) A
 
#define STRINGV_cfB(T, A)   (char *) A
 
#define PSTRING_cfB(T, A)   (char *) A
 
#define PSTRINGV_cfB(T, A)   (char *) A
 
#define PVOID_cfB(T, A)   (void *) A
 
#define ROUTINE_cfB(T, A)   (void(*)(CF_NULL_PROTO))A
 
#define ZTRINGV_cfB(T, A)   (char *) A
 
#define PZTRINGV_cfB(T, A)   (char *) A
 
#define SCF(TN, NAME, I, A)   _(TN,_cfSTR)(3,S,NAME,I,A,0,0)
 
#define DEFAULT_cfS(M, I, A)
 
#define LOGICAL_cfS(M, I, A)
 
#define PLOGICAL_cfS(M, I, A)
 
#define STRING_cfS(M, I, A)   ,sizeof(A)
 
#define STRINGV_cfS(M, I, A)
 
#define PSTRING_cfS(M, I, A)   ,sizeof(A)
 
#define PSTRINGV_cfS(M, I, A)   STRINGV_cfS(M,I,A)
 
#define ZTRINGV_cfS(M, I, A)
 
#define PZTRINGV_cfS(M, I, A)
 
#define HCF(TN, I)   _(TN,_cfSTR)(3,H,COMMA, H,_(C,I),0,0)
 
#define HHCF(TN, I)   _(TN,_cfSTR)(3,H,COMMA,HH,_(C,I),0,0)
 
#define HHHCF(TN, I)   _(TN,_cfSTR)(3,H,COLON, H,_(C,I),0,0)
 
#define H_CF_SPECIAL   unsigned
 
#define HH_CF_SPECIAL
 
#define DEFAULT_cfH(M, I, A)
 
#define LOGICAL_cfH(S, U, B)
 
#define PLOGICAL_cfH(S, U, B)
 
#define STRING_cfH(S, U, B)   _(A,S) _(U,_CF_SPECIAL) B
 
#define STRINGV_cfH(S, U, B)   STRING_cfH(S,U,B)
 
#define PSTRING_cfH(S, U, B)   STRING_cfH(S,U,B)
 
#define PSTRINGV_cfH(S, U, B)   STRING_cfH(S,U,B)
 
#define PNSTRING_cfH(S, U, B)   STRING_cfH(S,U,B)
 
#define PPSTRING_cfH(S, U, B)   STRING_cfH(S,U,B)
 
#define ZTRINGV_cfH(S, U, B)
 
#define PZTRINGV_cfH(S, U, B)
 
#define VOID_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define BYTE_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define DOUBLE_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define FLOAT_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define INT_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LOGICAL_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,LOGICAL,A,B,C,D,E)
 
#define LONG_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define SHORT_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define BYTEV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define BYTEVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define BYTEVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define BYTEVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define BYTEVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define BYTEVVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define BYTEVVVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define DOUBLEV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define DOUBLEVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define DOUBLEVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define DOUBLEVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define DOUBLEVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define DOUBLEVVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define DOUBLEVVVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define FLOATV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define FLOATVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define FLOATVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define FLOATVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define FLOATVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define FLOATVVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define FLOATVVVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define INTV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define INTVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define INTVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define INTVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define INTVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define INTVVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define INTVVVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LOGICALV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LOGICALVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LOGICALVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LOGICALVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LOGICALVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LOGICALVVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LOGICALVVVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LONGV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LONGVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LONGVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LONGVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LONGVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LONGVVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define LONGVVVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define SHORTV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define SHORTVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define SHORTVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define SHORTVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define SHORTVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define SHORTVVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define SHORTVVVVVVV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define PBYTE_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define PDOUBLE_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define PFLOAT_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define PINT_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define PLOGICAL_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,PLOGICAL,A,B,C,D,E)
 
#define PLONG_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define PSHORT_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define STRING_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,STRING,A,B,C,D,E)
 
#define PSTRING_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,PSTRING,A,B,C,D,E)
 
#define STRINGV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,STRINGV,A,B,C,D,E)
 
#define PSTRINGV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,PSTRINGV,A,B,C,D,E)
 
#define PNSTRING_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,PNSTRING,A,B,C,D,E)
 
#define PPSTRING_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,PPSTRING,A,B,C,D,E)
 
#define PVOID_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define ROUTINE_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define SIMPLE_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
 
#define ZTRINGV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,ZTRINGV,A,B,C,D,E)
 
#define PZTRINGV_cfSTR(N, T, A, B, C, D, E)   _(CFARGS,N)(T,PZTRINGV,A,B,C,D,E)
 
#define CF_0_cfSTR(N, T, A, B, C, D, E)
 
#define CCF(NAME, TN, I)   _(TN,_cfSTR)(5,C,NAME,I,_(A,I),_(B,I),_(C,I))
 
#define DEFAULT_cfC(M, I, A, B, C)
 
#define LOGICAL_cfC(M, I, A, B, C)   A=C2FLOGICAL( A);
 
#define PLOGICAL_cfC(M, I, A, B, C)   *A=C2FLOGICAL(*A);
 
#define STRING_cfC(M, I, A, B, C)
 
#define PSTRING_cfC(M, I, A, B, C)
 
#define STRINGV_cfC(M, I, A, B, C)    AATRINGV_cfA( A,B,(C/0xFFFF)*(C%0xFFFF),C/0xFFFF,C%0xFFFF)
 
#define PSTRINGV_cfC(M, I, A, B, C)    APATRINGV_cfA( A,B,(C/0xFFFF)*(C%0xFFFF),C/0xFFFF,C%0xFFFF)
 
#define ZTRINGV_cfC(M, I, A, B, C)
 
#define PZTRINGV_cfC(M, I, A, B, C)
 
#define BYTE_cfCCC(A, B)   &A
 
#define DOUBLE_cfCCC(A, B)   &A
 
#define FLOAT_cfCCC(A, B)   &A
 
#define INT_cfCCC(A, B)   &A
 
#define LOGICAL_cfCCC(A, B)   &A
 
#define LONG_cfCCC(A, B)   &A
 
#define SHORT_cfCCC(A, B)   &A
 
#define PBYTE_cfCCC(A, B)   A
 
#define PDOUBLE_cfCCC(A, B)   A
 
#define PFLOAT_cfCCC(A, B)   A
 
#define PINT_cfCCC(A, B)   A
 
#define PLOGICAL_cfCCC(A, B)   B=A /* B used to keep a common W table. */
 
#define PLONG_cfCCC(A, B)   A
 
#define PSHORT_cfCCC(A, B)   A
 
#define CCCF(TN, I, M)   _SEP_(TN,M,COMMA) _Icf(3,CC,TN,_(A,I),_(B,I))
 
#define INT_cfCC(T, A, B)   _(T,_cfCCC)(A,B)
 
#define INTV_cfCC(T, A, B)   A
 
#define INTVV_cfCC(T, A, B)   A
 
#define INTVVV_cfCC(T, A, B)   A
 
#define INTVVVV_cfCC(T, A, B)   A
 
#define INTVVVVV_cfCC(T, A, B)   A
 
#define INTVVVVVV_cfCC(T, A, B)   A
 
#define INTVVVVVVV_cfCC(T, A, B)   A
 
#define PINT_cfCC(T, A, B)   _(T,_cfCCC)(A,B)
 
#define PVOID_cfCC(T, A, B)   A
 
#define ROUTINE_cfCC(T, A, B)   A
 
#define SIMPLE_cfCC(T, A, B)   A
 
#define STRING_cfCC(T, A, B)   A
 
#define STRINGV_cfCC(T, A, B)   B.fs
 
#define PSTRING_cfCC(T, A, B)   A
 
#define PSTRINGV_cfCC(T, A, B)   B.fs
 
#define ZTRINGV_cfCC(T, A, B)   STRINGV_cfCC(T,A,B)
 
#define PZTRINGV_cfCC(T, A, B)   PSTRINGV_cfCC(T,A,B)
 
#define BYTE_cfX   return A0;
 
#define DOUBLE_cfX   return A0;
 
#define FLOAT_cfX   return A0;
 
#define INT_cfX   return A0;
 
#define LOGICAL_cfX   return F2CLOGICAL(A0);
 
#define LONG_cfX   return A0;
 
#define SHORT_cfX   return A0;
 
#define VOID_cfX   return ;
 
#define STRING_cfX
 
#define CFFUN(NAME)   _(__cf__,NAME)
 
#define CCALLSFFUN0(UN, LN)   CFFUN(UN)()
 
#define CCALLSFFUN1(UN, LN, T1, A1)    CCALLSFFUN5 (UN,LN,T1,CF_0,CF_0,CF_0,CF_0,A1,0,0,0,0)
 
#define CCALLSFFUN2(UN, LN, T1, T2, A1, A2)    CCALLSFFUN5 (UN,LN,T1,T2,CF_0,CF_0,CF_0,A1,A2,0,0,0)
 
#define CCALLSFFUN3(UN, LN, T1, T2, T3, A1, A2, A3)    CCALLSFFUN5 (UN,LN,T1,T2,T3,CF_0,CF_0,A1,A2,A3,0,0)
 
#define CCALLSFFUN4(UN, LN, T1, T2, T3, T4, A1, A2, A3, A4)    CCALLSFFUN5 (UN,LN,T1,T2,T3,T4,CF_0,A1,A2,A3,A4,0)
 
#define CCALLSFFUN5(UN, LN, T1, T2, T3, T4, T5, A1, A2, A3, A4, A5)    CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,0,0,0,0,0)
 
#define CCALLSFFUN6(UN, LN, T1, T2, T3, T4, T5, T6, A1, A2, A3, A4, A5, A6)    CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,0,0,0,0)
 
#define CCALLSFFUN7(UN, LN, T1, T2, T3, T4, T5, T6, T7, A1, A2, A3, A4, A5, A6, A7)    CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,0,0,0)
 
#define CCALLSFFUN8(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, A1, A2, A3, A4, A5, A6, A7, A8)    CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,0,0)
 
#define CCALLSFFUN9(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, A1, A2, A3, A4, A5, A6, A7, A8, A9)    CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,0)
 
#define CCALLSFFUN10(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA)    CCALLSFFUN14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,0,0,0,0)
 
#define CCALLSFFUN11(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB)    CCALLSFFUN14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,0,0,0)
 
#define CCALLSFFUN12(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC)    CCALLSFFUN14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,0,0)
 
#define CCALLSFFUN13(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC, AD)    CCALLSFFUN14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,0)
 
#define CCALLSFFUN14(UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC, AD, AE)
 
#define PROTOCCALLSFFUN0(F, UN, LN)
 
#define PROTOCCALLSFFUN1(T0, UN, LN, T1)    PROTOCCALLSFFUN5 (T0,UN,LN,T1,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFFUN2(T0, UN, LN, T1, T2)    PROTOCCALLSFFUN5 (T0,UN,LN,T1,T2,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFFUN3(T0, UN, LN, T1, T2, T3)    PROTOCCALLSFFUN5 (T0,UN,LN,T1,T2,T3,CF_0,CF_0)
 
#define PROTOCCALLSFFUN4(T0, UN, LN, T1, T2, T3, T4)    PROTOCCALLSFFUN5 (T0,UN,LN,T1,T2,T3,T4,CF_0)
 
#define PROTOCCALLSFFUN5(T0, UN, LN, T1, T2, T3, T4, T5)    PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFFUN6(T0, UN, LN, T1, T2, T3, T4, T5, T6)    PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFFUN7(T0, UN, LN, T1, T2, T3, T4, T5, T6, T7)    PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFFUN8(T0, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8)    PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0)
 
#define PROTOCCALLSFFUN9(T0, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9)    PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0)
 
#define PROTOCCALLSFFUN10(T0, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA)    PROTOCCALLSFFUN14(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFFUN11(T0, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB)    PROTOCCALLSFFUN14(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0)
 
#define PROTOCCALLSFFUN12(T0, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC)    PROTOCCALLSFFUN14(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0)
 
#define PROTOCCALLSFFUN13(T0, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD)    PROTOCCALLSFFUN14(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0)
 
#define PROTOCCALLSFFUN14(T0, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE)
 
#define DCF(TN, I)   HCF(TN,I)
 
#define DDCF(TN, I)   HHCF(TN,I)
 
#define DDDCF(TN, I)   HHHCF(TN,I)
 
#define QCF(TN, I)   _(TN,_cfSTR)(1,Q,_(B,I), 0,0,0,0)
 
#define DEFAULT_cfQ(B)
 
#define LOGICAL_cfQ(B)
 
#define PLOGICAL_cfQ(B)
 
#define STRINGV_cfQ(B)   char *B; unsigned int _(B,N);
 
#define STRING_cfQ(B)   char *B=NULL;
 
#define PSTRING_cfQ(B)   char *B=NULL;
 
#define PSTRINGV_cfQ(B)   STRINGV_cfQ(B)
 
#define PNSTRING_cfQ(B)   char *B=NULL;
 
#define PPSTRING_cfQ(B)
 
#define ROUTINE_orig   (void *)
 
#define ROUTINE_1   ROUTINE_orig
 
#define ROUTINE_2   ROUTINE_orig
 
#define ROUTINE_3   ROUTINE_orig
 
#define ROUTINE_4   ROUTINE_orig
 
#define ROUTINE_5   ROUTINE_orig
 
#define ROUTINE_6   ROUTINE_orig
 
#define ROUTINE_7   ROUTINE_orig
 
#define ROUTINE_8   ROUTINE_orig
 
#define ROUTINE_9   ROUTINE_orig
 
#define ROUTINE_10   ROUTINE_orig
 
#define ROUTINE_11   ROUTINE_orig
 
#define ROUTINE_12   ROUTINE_orig
 
#define ROUTINE_13   ROUTINE_orig
 
#define ROUTINE_14   ROUTINE_orig
 
#define TCF(NAME, TN, I, M)   _SEP_(TN,M,COMMA) _(TN,_cfT)(NAME,I,_(A,I),_(B,I),_(C,I))
 
#define BYTE_cfT(M, I, A, B, D)   *A
 
#define DOUBLE_cfT(M, I, A, B, D)   *A
 
#define FLOAT_cfT(M, I, A, B, D)   *A
 
#define INT_cfT(M, I, A, B, D)   *A
 
#define LOGICAL_cfT(M, I, A, B, D)   F2CLOGICAL(*A)
 
#define LONG_cfT(M, I, A, B, D)   *A
 
#define SHORT_cfT(M, I, A, B, D)   *A
 
#define BYTEV_cfT(M, I, A, B, D)   A
 
#define DOUBLEV_cfT(M, I, A, B, D)   A
 
#define FLOATV_cfT(M, I, A, B, D)   VOIDP A
 
#define INTV_cfT(M, I, A, B, D)   A
 
#define LOGICALV_cfT(M, I, A, B, D)   A
 
#define LONGV_cfT(M, I, A, B, D)   A
 
#define SHORTV_cfT(M, I, A, B, D)   A
 
#define BYTEVV_cfT(M, I, A, B, D)   (void *)A /* We have to cast to void *, */
 
#define BYTEVVV_cfT(M, I, A, B, D)   (void *)A /* since we don't know the */
 
#define BYTEVVVV_cfT(M, I, A, B, D)   (void *)A /* dimensions of the array. */
 
#define BYTEVVVVV_cfT(M, I, A, B, D)   (void *)A /* i.e. Unfortunately, can't */
 
#define BYTEVVVVVV_cfT(M, I, A, B, D)   (void *)A /* check that the type */
 
#define BYTEVVVVVVV_cfT(M, I, A, B, D)   (void *)A /* matches the prototype. */
 
#define DOUBLEVV_cfT(M, I, A, B, D)   (void *)A
 
#define DOUBLEVVV_cfT(M, I, A, B, D)   (void *)A
 
#define DOUBLEVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define DOUBLEVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define DOUBLEVVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define DOUBLEVVVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define FLOATVV_cfT(M, I, A, B, D)   (void *)A
 
#define FLOATVVV_cfT(M, I, A, B, D)   (void *)A
 
#define FLOATVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define FLOATVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define FLOATVVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define FLOATVVVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define INTVV_cfT(M, I, A, B, D)   (void *)A
 
#define INTVVV_cfT(M, I, A, B, D)   (void *)A
 
#define INTVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define INTVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define INTVVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define INTVVVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define LOGICALVV_cfT(M, I, A, B, D)   (void *)A
 
#define LOGICALVVV_cfT(M, I, A, B, D)   (void *)A
 
#define LOGICALVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define LOGICALVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define LOGICALVVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define LOGICALVVVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define LONGVV_cfT(M, I, A, B, D)   (void *)A
 
#define LONGVVV_cfT(M, I, A, B, D)   (void *)A
 
#define LONGVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define LONGVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define LONGVVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define LONGVVVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define SHORTVV_cfT(M, I, A, B, D)   (void *)A
 
#define SHORTVVV_cfT(M, I, A, B, D)   (void *)A
 
#define SHORTVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define SHORTVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define SHORTVVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define SHORTVVVVVVV_cfT(M, I, A, B, D)   (void *)A
 
#define PBYTE_cfT(M, I, A, B, D)   A
 
#define PDOUBLE_cfT(M, I, A, B, D)   A
 
#define PFLOAT_cfT(M, I, A, B, D)   VOIDP A
 
#define PINT_cfT(M, I, A, B, D)   A
 
#define PLOGICAL_cfT(M, I, A, B, D)   ((*A=F2CLOGICAL(*A)),A)
 
#define PLONG_cfT(M, I, A, B, D)   A
 
#define PSHORT_cfT(M, I, A, B, D)   A
 
#define PVOID_cfT(M, I, A, B, D)   A
 
#define ROUTINE_cfT(M, I, A, B, D)   _(ROUTINE_,I) A
 
#define TTSTR( A, B, D)    ((B=(char*)malloc(D+1))[D]='\0', memcpy(B,A,D), kill_trailing(B,' '))
 
#define TTTTSTR( A, B, D)
 
#define TTTTSTRV(A, B, D, E)
 
#define STRING_cfT(M, I, A, B, D)   TTTTSTR( A,B,D)
 
#define STRINGV_cfT(M, I, A, B, D)   TTTTSTRV(A,B,D, num_elem(A,D,_3(M,_STRV_A,I)))
 
#define PSTRING_cfT(M, I, A, B, D)   TTSTR( A,B,D)
 
#define PPSTRING_cfT(M, I, A, B, D)   A
 
#define PNSTRING_cfT(M, I, A, B, D)   STRING_cfT(M,I,A,B,D)
 
#define PSTRINGV_cfT(M, I, A, B, D)   STRINGV_cfT(M,I,A,B,D)
 
#define CF_0_cfT(M, I, A, B, D)
 
#define RCF(TN, I)   _(TN,_cfSTR)(3,R,_(A,I),_(B,I),_(C,I),0,0)
 
#define DEFAULT_cfR(A, B, D)
 
#define LOGICAL_cfR(A, B, D)
 
#define PLOGICAL_cfR(A, B, D)   *A=C2FLOGICAL(*A);
 
#define STRING_cfR(A, B, D)   if (B) free(B);
 
#define STRINGV_cfR(A, B, D)   free(B);
 
#define RRRRPSTR(A, B, D)
 
#define RRRRPSTRV(A, B, D)   c2fstrv(B,A,D+1,(D+1)*_(B,N)), free(B);
 
#define PSTRING_cfR(A, B, D)   RRRRPSTR( A,B,D)
 
#define PSTRINGV_cfR(A, B, D)   RRRRPSTRV(A,B,D)
 
#define PNSTRING_cfR(A, B, D)   PSTRING_cfR(A,B,D)
 
#define PPSTRING_cfR(A, B, D)
 
#define BYTE_cfFZ(UN, LN)   INTEGER_BYTE FCALLSC_QUALIFIER fcallsc(UN,LN)(
 
#define DOUBLE_cfFZ(UN, LN)   DOUBLE_PRECISION FCALLSC_QUALIFIER fcallsc(UN,LN)(
 
#define INT_cfFZ(UN, LN)   int FCALLSC_QUALIFIER fcallsc(UN,LN)(
 
#define LOGICAL_cfFZ(UN, LN)   int FCALLSC_QUALIFIER fcallsc(UN,LN)(
 
#define LONG_cfFZ(UN, LN)   long FCALLSC_QUALIFIER fcallsc(UN,LN)(
 
#define SHORT_cfFZ(UN, LN)   short FCALLSC_QUALIFIER fcallsc(UN,LN)(
 
#define VOID_cfFZ(UN, LN)   void FCALLSC_QUALIFIER fcallsc(UN,LN)(
 
#define FLOAT_cfFZ(UN, LN)   FORTRAN_REAL FCALLSC_QUALIFIER fcallsc(UN,LN)(void
 
#define STRING_cfFZ(UN, LN)   void FCALLSC_QUALIFIER fcallsc(UN,LN)(char *AS, unsigned D0
 
#define BYTE_cfF(UN, LN)   BYTE_cfFZ(UN,LN)
 
#define DOUBLE_cfF(UN, LN)   DOUBLE_cfFZ(UN,LN)
 
#define FLOAT_cfF(UN, LN)   FORTRAN_REAL FCALLSC_QUALIFIER fcallsc(UN,LN)(
 
#define INT_cfF(UN, LN)   INT_cfFZ(UN,LN)
 
#define LOGICAL_cfF(UN, LN)   LOGICAL_cfFZ(UN,LN)
 
#define LONG_cfF(UN, LN)   LONG_cfFZ(UN,LN)
 
#define SHORT_cfF(UN, LN)   SHORT_cfFZ(UN,LN)
 
#define VOID_cfF(UN, LN)   VOID_cfFZ(UN,LN)
 
#define STRING_cfF(UN, LN)   STRING_cfFZ(UN,LN),
 
#define INT_cfFF
 
#define VOID_cfFF
 
#define STRING_cfFF   char *AS; unsigned D0;
 
#define INT_cfL   A0=
 
#define STRING_cfL   A0=
 
#define VOID_cfL
 
#define INT_cfK
 
#define VOID_cfK
 
#define STRING_cfK
 
#define BYTE_cfI   return A0;
 
#define DOUBLE_cfI   return A0;
 
#define FLOAT_cfI   return A0;
 
#define INT_cfI   return A0;
 
#define LOGICAL_cfI   return C2FLOGICAL(A0);
 
#define LONG_cfI   return A0;
 
#define SHORT_cfI   return A0;
 
#define STRING_cfI   return ;
 
#define VOID_cfI   return ;
 
#define FCALLSCSUB0(CN, UN, LN)   FCALLSCFUN0(VOID,CN,UN,LN)
 
#define FCALLSCSUB1(CN, UN, LN, T1)   FCALLSCFUN1(VOID,CN,UN,LN,T1)
 
#define FCALLSCSUB2(CN, UN, LN, T1, T2)   FCALLSCFUN2(VOID,CN,UN,LN,T1,T2)
 
#define FCALLSCSUB3(CN, UN, LN, T1, T2, T3)   FCALLSCFUN3(VOID,CN,UN,LN,T1,T2,T3)
 
#define FCALLSCSUB4(CN, UN, LN, T1, T2, T3, T4)    FCALLSCFUN4(VOID,CN,UN,LN,T1,T2,T3,T4)
 
#define FCALLSCSUB5(CN, UN, LN, T1, T2, T3, T4, T5)    FCALLSCFUN5(VOID,CN,UN,LN,T1,T2,T3,T4,T5)
 
#define FCALLSCSUB6(CN, UN, LN, T1, T2, T3, T4, T5, T6)    FCALLSCFUN6(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6)
 
#define FCALLSCSUB7(CN, UN, LN, T1, T2, T3, T4, T5, T6, T7)    FCALLSCFUN7(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7)
 
#define FCALLSCSUB8(CN, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8)    FCALLSCFUN8(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8)
 
#define FCALLSCSUB9(CN, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9)    FCALLSCFUN9(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9)
 
#define FCALLSCSUB10(CN, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA)    FCALLSCFUN10(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA)
 
#define FCALLSCSUB11(CN, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB)    FCALLSCFUN11(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB)
 
#define FCALLSCSUB12(CN, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC)    FCALLSCFUN12(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC)
 
#define FCALLSCSUB13(CN, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD)    FCALLSCFUN13(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD)
 
#define FCALLSCSUB14(CN, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE)    FCALLSCFUN14(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)
 
#define FCALLSCFUN1(T0, CN, UN, LN, T1)    FCALLSCFUN5 (T0,CN,UN,LN,T1,CF_0,CF_0,CF_0,CF_0)
 
#define FCALLSCFUN2(T0, CN, UN, LN, T1, T2)    FCALLSCFUN5 (T0,CN,UN,LN,T1,T2,CF_0,CF_0,CF_0)
 
#define FCALLSCFUN3(T0, CN, UN, LN, T1, T2, T3)    FCALLSCFUN5 (T0,CN,UN,LN,T1,T2,T3,CF_0,CF_0)
 
#define FCALLSCFUN4(T0, CN, UN, LN, T1, T2, T3, T4)    FCALLSCFUN5 (T0,CN,UN,LN,T1,T2,T3,T4,CF_0)
 
#define FCALLSCFUN5(T0, CN, UN, LN, T1, T2, T3, T4, T5)    FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0)
 
#define FCALLSCFUN6(T0, CN, UN, LN, T1, T2, T3, T4, T5, T6)    FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0)
 
#define FCALLSCFUN7(T0, CN, UN, LN, T1, T2, T3, T4, T5, T6, T7)    FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0)
 
#define FCALLSCFUN8(T0, CN, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8)    FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0)
 
#define FCALLSCFUN9(T0, CN, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9)    FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0)
 
#define FCALLSCFUN10(T0, CN, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA)    FCALLSCFUN14(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0)
 
#define FCALLSCFUN11(T0, CN, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB)    FCALLSCFUN14(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0)
 
#define FCALLSCFUN12(T0, CN, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC)    FCALLSCFUN14(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0)
 
#define FCALLSCFUN13(T0, CN, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD)    FCALLSCFUN14(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0)
 
#define FCALLSCFUN0(T0, CN, UN, LN)
 
#define FCALLSCFUN14(T0, CN, UN, LN, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE)
 

Functions

static charc2fstrv (char *cstr, char *fstr, int elem_len, int sizeofcstr)
 
static charf2cstrv (char *fstr, char *cstr, int elem_len, int sizeofcstr)
 
static charkill_trailing (char *s, char t)
 
static charkill_trailingn (char *s, char t, char *e)
 
static charvkill_trailing (char *cstr, int elem_len, int sizeofcstr, char t)
 
static int num_elem (char *strv, unsigned elem_len, int term_char, int num_term)
 

Macro Definition Documentation

◆ _

#define _ (   A,
  B 
)    AB

Definition at line 43 of file cfortran.h.

◆ _2

#define _2 (   A,
  B 
)    AB

Definition at line 44 of file cfortran.h.

◆ _3

#define _3 (   A,
  B,
  C 
)    ABC

Definition at line 45 of file cfortran.h.

◆ __SEP_0

#define __SEP_0 (   TN,
  COMMA 
)

Definition at line 1182 of file cfortran.h.

◆ __SEP_1

#define __SEP_1 (   TN,
  COMMA 
)    _Icf(2,SEP,TN,COMMA,0)

Definition at line 1183 of file cfortran.h.

◆ _cfleft

#define _cfleft   1

Definition at line 29 of file cfortran.h.

◆ _cfleft_cfright

#define _cfleft_cfright   0

Definition at line 31 of file cfortran.h.

◆ _cfMIN

#define _cfMIN (   A,
  B 
)    (A<B?A:B)

Definition at line 307 of file cfortran.h.

◆ _cfright

#define _cfright

Definition at line 30 of file cfortran.h.

◆ _Icf

#define _Icf (   N,
  T,
  I,
  X,
  Y 
)    _(I,_cfINT)(N,T,I,X,Y,0)

Definition at line 1237 of file cfortran.h.

◆ _Icf4

#define _Icf4 (   N,
  T,
  I,
  X,
  Y,
  Z 
)    _(I,_cfINT)(N,T,I,X,Y,Z)

Definition at line 1238 of file cfortran.h.

◆ _NUM_ELEM_ARG

#define _NUM_ELEM_ARG   -2

Definition at line 530 of file cfortran.h.

◆ _NUM_ELEMS

#define _NUM_ELEMS   -1

Definition at line 529 of file cfortran.h.

◆ _SEP_

#define _SEP_ (   TN,
  C,
  COMMA 
)    _(__SEP_,C)(TN,COMMA)

Definition at line 1181 of file cfortran.h.

◆ _Z

#define _Z

Definition at line 883 of file cfortran.h.

◆ AACF

#define AACF (   TN,
  AI,
  I,
  C 
)    _SEP_(TN,C,COMMA) _Icf(3,AA,TN,AI,_(B,I))

Definition at line 714 of file cfortran.h.

◆ AATRINGV_cfA

#define AATRINGV_cfA (   A,
  B,
  sA,
  filA,
  silA 
)     (B.s=(char *)malloc((sA)-(filA)),B.fs=c2fstrv(A,B.s,(B.flen=(silA)-1)+1,(sA)));

Definition at line 690 of file cfortran.h.

785 :0); /* A?="constnt" */
786#define PSTRING_cfW(A,B) kill_trailing(A,' ');
787#ifdef vmsFortran
788#define STRINGV_cfW(A,B) free(B.dsc$a_pointer);
789#define PSTRINGV_cfW(A,B) \
790 vkill_trailing(f2cstrv((char*)A, (char*)A, \
791 B.dsc$w_length+1, B.dsc$l_arsize+B.dsc$l_m[0]), \
792 B.dsc$w_length+1, B.dsc$l_arsize+B.dsc$l_m[0], ' ');
793#else
794#define STRINGV_cfW(A,B) free(B.s);
795#define PSTRINGV_cfW(A,B) vkill_trailing( \
796 f2cstrv((char*)A,(char*)A,B.flen+1,B.sizeofA), B.flen+1,B.sizeofA,' ');
797#endif
798#define ZTRINGV_cfW(A,B) STRINGV_cfW(A,B)
799#define PZTRINGV_cfW(A,B) PSTRINGV_cfW(A,B)
800
801#define NCF(TN,I,C) _SEP_(TN,C,COMMA) _Icf(2,N,TN,_(A,I),0)
802#define NNCF(TN,I,C) UUCF(TN,I,C)
803#define NNNCF(TN,I,C) _SEP_(TN,C,COLON) _Icf(2,N,TN,_(A,I),0)
804#define INT_cfN(T,A) _(T,VVVVVVV_cfTYPE) * A
805#define INTV_cfN(T,A) _(T,VVVVVV_cfTYPE) * A
806#define INTVV_cfN(T,A) _(T,VVVVV_cfTYPE) * A
807#define INTVVV_cfN(T,A) _(T,VVVV_cfTYPE) * A
808#define INTVVVV_cfN(T,A) _(T,VVV_cfTYPE) * A
809#define INTVVVVV_cfN(T,A) _(T,VV_cfTYPE) * A
810#define INTVVVVVV_cfN(T,A) _(T,V_cfTYPE) * A
811#define INTVVVVVVV_cfN(T,A) _(T,_cfTYPE) * A
812#define PINT_cfN(T,A) _(T,_cfTYPE) * A
813#define PVOID_cfN(T,A) void * A
814#if defined(apolloFortran) || defined(hpuxFortran800) || defined(AbsoftUNIXFortran)
815#define ROUTINE_cfN(T,A) void (**A)(CF_NULL_PROTO)
816#else
817#define ROUTINE_cfN(T,A) void ( *A)(CF_NULL_PROTO)
818#endif
819#ifdef vmsFortran
820#define STRING_cfN(T,A) fstring * A
821#define STRINGV_cfN(T,A) fstringvector * A
822#else
823#ifdef CRAYFortran
824#define STRING_cfN(T,A) _fcd A
825#define STRINGV_cfN(T,A) _fcd A
826#else
827#define STRING_cfN(T,A) char * A
828#define STRINGV_cfN(T,A) char * A
829#endif
830#endif
831#define PSTRING_cfN(T,A) STRING_cfN(T,A) /* CRAY insists on arg.'s here. */
832#define PNSTRING_cfN(T,A) STRING_cfN(T,A) /* CRAY insists on arg.'s here. */
833#define PPSTRING_cfN(T,A) STRING_cfN(T,A) /* CRAY insists on arg.'s here. */
834#define PSTRINGV_cfN(T,A) STRINGV_cfN(T,A)
835#define ZTRINGV_cfN(T,A) STRINGV_cfN(T,A)
836#define PZTRINGV_cfN(T,A) PSTRINGV_cfN(T,A)
837
838
839/* Apollo 6.7, CRAY, old Sun, VAX/Ultrix vcc/cc and new ultrix
840 can't hack more than 31 arg's.
841 e.g. ultrix >= 4.3 gives message:
842 zow35> cc -c -DDECFortran cfortest.c
843 cfe: Fatal: Out of memory: cfortest.c
844 zow35>
845 Old __hpux had the problem, but new 'HP-UX A.09.03 A 9000/735' is fine
846 if using -Aa, otherwise we have a problem.
847 */
848#ifndef MAX_PREPRO_ARGS
849#if !defined(__GNUC__) && (defined(VAXUltrix) || defined(__CF__APOLLO67) || (defined(sun)&&!defined(__sun)) || defined(_CRAY) || defined(__ultrix__) || (defined(__hpux)&&defined(__CF__KnR)))
850#define MAX_PREPRO_ARGS 31
851#else
852#define MAX_PREPRO_ARGS 99
853#endif
854#endif
855
856#if defined(AbsoftUNIXFortran)
857/* In addition to explicit Absoft stuff, only Absoft requires:
858 - DEFAULT coming from _cfSTR.
859 DEFAULT could have been called e.g. INT, but keep it for clarity.
860 - M term in CFARGT14 and CFARGT14FS.
861 */
862#define ABSOFT_cf1(T0) _(T0,_cfSTR)(0,ABSOFT1,0,0,0,0,0)
863#define ABSOFT_cf2(T0) _(T0,_cfSTR)(0,ABSOFT2,0,0,0,0,0)
864#define ABSOFT_cf3(T0) _(T0,_cfSTR)(0,ABSOFT3,0,0,0,0,0)
865#define DEFAULT_cfABSOFT1
866#define LOGICAL_cfABSOFT1
867#define STRING_cfABSOFT1 ,MAX_LEN_FORTRAN_FUNCTION_STRING
868#define DEFAULT_cfABSOFT2
869#define LOGICAL_cfABSOFT2
870#define STRING_cfABSOFT2 ,unsigned D0
871#define DEFAULT_cfABSOFT3
872#define LOGICAL_cfABSOFT3
873#define STRING_cfABSOFT3 ,D0
874#else
875#define ABSOFT_cf1(T0)
876#define ABSOFT_cf2(T0)
877#define ABSOFT_cf3(T0)
878#endif
879
880/* _Z introduced to cicumvent IBM and HP silly preprocessor warning.
881 e.g. "Macro CFARGT14 invoked with a null argument."
882 */
883#define _Z
884
885#define CFARGT14S(S,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
886 S(T1,1) S(T2,2) S(T3,3) S(T4,4) S(T5,5) S(T6,6) S(T7,7) \
887 S(T8,8) S(T9,9) S(TA,A) S(TB,B) S(TC,C) S(TD,D) S(TE,E)
888#define CFARGT14FS(F,S,M,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
889 F(T1,1,0) F(T2,2,1) F(T3,3,1) F(T4,4,1) F(T5,5,1) F(T6,6,1) F(T7,7,1) \
890 F(T8,8,1) F(T9,9,1) F(TA,A,1) F(TB,B,1) F(TC,C,1) F(TD,D,1) F(TE,E,1) \
891 M CFARGT14S(S,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)
892
893#if !(defined(PowerStationFortran)||defined(hpuxFortran800))
894/* Old CFARGT14 -> CFARGT14FS as seen below, for Absoft cross-compile yields:
895 SunOS> cc -c -Xa -DAbsoftUNIXFortran c.c
896 "c.c", line 406: warning: argument mismatch
897 Haven't checked if this is ANSI C or a SunOS bug. SunOS -Xs works ok.
898 Behavior is most clearly seen in example:
899 #define A 1 , 2
900 #define C(X,Y,Z) x=X. y=Y. z=Z.
901 #define D(X,Y,Z) C(X,Y,Z)
902 D(x,A,z)
903 Output from preprocessor is: x = x . y = 1 . z = 2 .
904 #define CFARGT14(F,S,M,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
905 CFARGT14FS(F,S,M,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)
906*/
907#define CFARGT14(F,S,M,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
908 F(T1,1,0) F(T2,2,1) F(T3,3,1) F(T4,4,1) F(T5,5,1) F(T6,6,1) F(T7,7,1) \
909 F(T8,8,1) F(T9,9,1) F(TA,A,1) F(TB,B,1) F(TC,C,1) F(TD,D,1) F(TE,E,1) \
910 M CFARGT14S(S,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)
911/* F changed to Z for arg 15. Watch out if ever extend to S or Z arguments. */
912#define CFARGT20(Z,S,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK) \
913 Z(T1,1,0) Z(T2,2,1) Z(T3,3,1) Z(T4,4,1) Z(T5,5,1) Z(T6,6,1) Z(T7,7,1) \
914 Z(T8,8,1) Z(T9,9,1) Z(TA,A,1) Z(TB,B,1) Z(TC,C,1) Z(TD,D,1) Z(TE,E,1) \
915 Z(TF,F,1) Z(TG,G,1) Z(TH,H,1) Z(TI,I,1) Z(TJ,J,1) Z(TK,K,1) \
916 S(T1,1) S(T2,2) S(T3,3) S(T4,4) S(T5,5) S(T6,6) S(T7,7) \
917 S(T8,8) S(T9,9) S(TA,A) S(TB,B) S(TC,C) S(TD,D) S(TE,E) \
918 S(TF,F) S(TG,G) S(TH,H) S(TI,I) S(TJ,J) S(TK,K)
919#define CFARGTA14(F,S,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE) \
920 F(T1,A1,1,0) F(T2,A2,2,1) F(T3,A3,3,1) F(T4,A4,4,1) F(T5,A5,5,1) F(T6,A6,6,1) \
921 F(T7,A7,7,1) F(T8,A8,8,1) F(T9,A9,9,1) F(TA,AA,A,1) F(TB,AB,B,1) F(TC,AC,C,1) \
922 F(TD,AD,D,1) F(TE,AE,E,1) S(T1,1) S(T2,2) S(T3,3) S(T4,4) \
923 S(T5,5) S(T6,6) S(T7,7) S(T8,8) S(T9,9) S(TA,A) \
924 S(TB,B) S(TC,C) S(TD,D) S(TE,E)
925#if MAX_PREPRO_ARGS>31
926/* F changed to Z for arg 15. Watch out if ever extend to S or Z arguments. */
927#define CFARGTA20(Z,S,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK) \
928 Z(T1,A1,1,0) Z(T2,A2,2,1) Z(T3,A3,3,1) Z(T4,A4,4,1) Z(T5,A5,5,1) Z(T6,A6,6,1) \
929 Z(T7,A7,7,1) Z(T8,A8,8,1) Z(T9,A9,9,1) Z(TA,AA,A,1) Z(TB,AB,B,1) Z(TC,AC,C,1) \
930 Z(TD,AD,D,1) Z(TE,AE,E,1) Z(TF,AF,F,1) Z(TG,AG,G,1) Z(TH,AH,H,1) Z(TI,AI,I,1) \
931 Z(TJ,AJ,J,1) Z(TK,AK,K,1) S(T1,1) S(T2,2) S(T3,3) S(T4,4) \
932 S(T5,5) S(T6,6) S(T7,7) S(T8,8) S(T9,9) S(TA,A) \
933 S(TB,B) S(TC,C) S(TD,D) S(TE,E) S(TF,F) S(TG,G) \
934 S(TH,H) S(TI,I) S(TJ,J) S(TK,K)
935#endif
936#else
937#define CFARGT14(F,S,M,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
938 F(T1,1,0) S(T1,1) F(T2,2,1) S(T2,2) F(T3,3,1) S(T3,3) F(T4,4,1) S(T4,4) \
939 F(T5,5,1) S(T5,5) F(T6,6,1) S(T6,6) F(T7,7,1) S(T7,7) F(T8,8,1) S(T8,8) \
940 F(T9,9,1) S(T9,9) F(TA,A,1) S(TA,A) F(TB,B,1) S(TB,B) F(TC,C,1) S(TC,C) \
941 F(TD,D,1) S(TD,D) F(TE,E,1) S(TE,E)
942/* F changed to Z for arg 15. Watch out if ever extend to S or Z arguments. */
943#define CFARGT20(Z,S,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK) \
944 Z(T1,1,0) S(T1,1) Z(T2,2,1) S(T2,2) Z(T3,3,1) S(T3,3) Z(T4,4,1) S(T4,4) \
945 Z(T5,5,1) S(T5,5) Z(T6,6,1) S(T6,6) Z(T7,7,1) S(T7,7) Z(T8,8,1) S(T8,8) \
946 Z(T9,9,1) S(T9,9) Z(TA,A,1) S(TA,A) Z(TB,B,1) S(TB,B) Z(TC,C,1) S(TC,C) \
947 Z(TD,D,1) S(TD,D) Z(TE,E,1) S(TE,E) Z(TF,F,1) S(TF,F) Z(TG,G,1) S(TG,G) \
948 Z(TH,H,1) S(TH,H) Z(TI,I,1) S(TI,I) Z(TJ,J,1) S(TJ,J) Z(TK,K,1) S(TK,K)
949#define CFARGTA14(F,S,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE) \
950 F(T1,A1,1,0) S(T1,1) F(T2,A2,2,1) S(T2,2) F(T3,A3,3,1) S(T3,3) \
951 F(T4,A4,4,1) S(T4,4) F(T5,A5,5,1) S(T5,5) F(T6,A6,6,1) S(T6,6) \
952 F(T7,A7,7,1) S(T7,7) F(T8,A8,8,1) S(T8,8) F(T9,A9,9,1) S(T9,9) \
953 F(TA,AA,A,1) S(TA,A) F(TB,AB,B,1) S(TB,B) F(TC,AC,C,1) S(TC,C) \
954 F(TD,AD,D,1) S(TD,D) F(TE,AE,E,1) S(TE,E)
955#if MAX_PREPRO_ARGS>31
956/* F changed to Z for arg 15. Watch out if ever extend to S or Z arguments. */
957#define CFARGTA20(Z,S,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK) \
958 Z(T1,A1,1,0) S(T1,1) Z(T2,A2,2,1) S(T2,2) Z(T3,A3,3,1) S(T3,3) \
959 Z(T4,A4,4,1) S(T4,4) Z(T5,A5,5,1) S(T5,5) Z(T6,A6,6,1) S(T6,6) \
960 Z(T7,A7,7,1) S(T7,7) Z(T8,A8,8,1) S(T8,8) Z(T9,A9,9,1) S(T9,9) \
961 Z(TA,AA,A,1) S(TA,A) Z(TB,AB,B,1) S(TB,B) Z(TC,AC,C,1) S(TC,C) \
962 Z(TD,AD,D,1) S(TD,D) Z(TE,AE,E,1) S(TE,E) Z(TF,AF,F,1) S(TF,F) \
963 Z(TG,AG,G,1) S(TG,G) Z(TH,AH,H,1) S(TH,H) Z(TI,AI,I,1) S(TI,I) \
964 Z(TJ,AJ,J,1) S(TJ,J) Z(TK,AK,K,1) S(TK,K)
965#endif
966#endif
967
968
969#define PROTOCCALLSFSUB1( UN,LN,T1) \
970 PROTOCCALLSFSUB14(UN,LN,T1,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
971#define PROTOCCALLSFSUB2( UN,LN,T1,T2) \
972 PROTOCCALLSFSUB14(UN,LN,T1,T2,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
973#define PROTOCCALLSFSUB3( UN,LN,T1,T2,T3) \
974 PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
975#define PROTOCCALLSFSUB4( UN,LN,T1,T2,T3,T4) \
976 PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
977#define PROTOCCALLSFSUB5( UN,LN,T1,T2,T3,T4,T5) \
978 PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
979#define PROTOCCALLSFSUB6( UN,LN,T1,T2,T3,T4,T5,T6) \
980 PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
981#define PROTOCCALLSFSUB7( UN,LN,T1,T2,T3,T4,T5,T6,T7) \
982 PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
983#define PROTOCCALLSFSUB8( UN,LN,T1,T2,T3,T4,T5,T6,T7,T8) \
984 PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)
985#define PROTOCCALLSFSUB9( UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9) \
986 PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0,CF_0,CF_0,CF_0,CF_0)
987#define PROTOCCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA) \
988 PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0)
989#define PROTOCCALLSFSUB11(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB) \
990 PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0)
991#define PROTOCCALLSFSUB12(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC) \
992 PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0)
993#define PROTOCCALLSFSUB13(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD) \
994 PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0)
995
996
997#define PROTOCCALLSFSUB15(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF) \
998 PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,CF_0,CF_0,CF_0,CF_0,CF_0)
999#define PROTOCCALLSFSUB16(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG) \
1000 PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,CF_0,CF_0,CF_0,CF_0)
1001#define PROTOCCALLSFSUB17(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH) \
1002 PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,CF_0,CF_0,CF_0)
1003#define PROTOCCALLSFSUB18(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI) \
1004 PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,CF_0,CF_0)
1005#define PROTOCCALLSFSUB19(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ) \
1006 PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,CF_0)
1007
1008
1009#ifndef FCALLSC_QUALIFIER
1010#ifdef VISUAL_CPLUSPLUS
1011#define FCALLSC_QUALIFIER __stdcall
1012#else
1013#define FCALLSC_QUALIFIER
1014#endif
1015#endif
1016
1017#ifdef __cplusplus
1018#define CFextern extern "C"
1019#else
1020#define CFextern extern
1021#endif
1022
1023
1024#ifdef CFSUBASFUN
1025#define PROTOCCALLSFSUB0(UN,LN) \
1026 PROTOCCALLSFFUN0( VOID,UN,LN)
1027#define PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
1028 PROTOCCALLSFFUN14(VOID,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)
1029#define PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK)\
1030 PROTOCCALLSFFUN20(VOID,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK)
1031#else
1032/* Note: Prevent compiler warnings, null #define PROTOCCALLSFSUB14/20 after
1033 #include-ing cfortran.h if calling the FORTRAN wrapper within the same
1034 source code where the wrapper is created. */
1035#define PROTOCCALLSFSUB0(UN,LN) CFextern void FCALLSC_QUALIFIER CFC_(UN,LN)();
1036#ifndef __CF__KnR
1037#define PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
1038 CFextern void FCALLSC_QUALIFIER CFC_(UN,LN)( CFARGT14(NCF,KCF,_Z,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) );
1039#define PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK)\
1040 CFextern void FCALLSC_QUALIFIER CFC_(UN,LN)( CFARGT20(NCF,KCF,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK) );
1041#else
1042#define PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
1043 PROTOCCALLSFSUB0(UN,LN)
1044#define PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK) \
1045 PROTOCCALLSFSUB0(UN,LN)
1046#endif
1047#endif
1048
1049
1050#ifdef OLD_VAXC /* Allow %CC-I-PARAMNOTUSED. */
1051#pragma standard
1052#endif
1053
1054
1055#define CCALLSFSUB1( UN,LN,T1, A1) \
1056 CCALLSFSUB5 (UN,LN,T1,CF_0,CF_0,CF_0,CF_0,A1,0,0,0,0)
1057#define CCALLSFSUB2( UN,LN,T1,T2, A1,A2) \
1058 CCALLSFSUB5 (UN,LN,T1,T2,CF_0,CF_0,CF_0,A1,A2,0,0,0)
1059#define CCALLSFSUB3( UN,LN,T1,T2,T3, A1,A2,A3) \
1060 CCALLSFSUB5 (UN,LN,T1,T2,T3,CF_0,CF_0,A1,A2,A3,0,0)
1061#define CCALLSFSUB4( UN,LN,T1,T2,T3,T4, A1,A2,A3,A4)\
1062 CCALLSFSUB5 (UN,LN,T1,T2,T3,T4,CF_0,A1,A2,A3,A4,0)
1063#define CCALLSFSUB5( UN,LN,T1,T2,T3,T4,T5, A1,A2,A3,A4,A5) \
1064 CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,0,0,0,0,0)
1065#define CCALLSFSUB6( UN,LN,T1,T2,T3,T4,T5,T6, A1,A2,A3,A4,A5,A6) \
1066 CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,0,0,0,0)
1067#define CCALLSFSUB7( UN,LN,T1,T2,T3,T4,T5,T6,T7, A1,A2,A3,A4,A5,A6,A7) \
1068 CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,0,0,0)
1069#define CCALLSFSUB8( UN,LN,T1,T2,T3,T4,T5,T6,T7,T8, A1,A2,A3,A4,A5,A6,A7,A8) \
1070 CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,0,0)
1071#define CCALLSFSUB9( UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,A1,A2,A3,A4,A5,A6,A7,A8,A9)\
1072 CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,0)
1073#define CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA)\
1074 CCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,0,0,0,0)
1075#define CCALLSFSUB11(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB)\
1076 CCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,0,0,0)
1077#define CCALLSFSUB12(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC)\
1078 CCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,0,0)
1079#define CCALLSFSUB13(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD)\
1080 CCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,0)
1081
1082#ifdef __cplusplus
1083#define CPPPROTOCLSFSUB0( UN,LN)
1084#define CPPPROTOCLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)
1085#define CPPPROTOCLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK)
1086#else
1087#define CPPPROTOCLSFSUB0(UN,LN) \
1088 PROTOCCALLSFSUB0(UN,LN)
1089#define CPPPROTOCLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
1090 PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)
1091#define CPPPROTOCLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK) \
1092 PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK)
1093#endif
1094
1095#ifdef CFSUBASFUN
1096#define CCALLSFSUB0(UN,LN) CCALLSFFUN0(UN,LN)
1097#define CCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE)\
1098 CCALLSFFUN14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE)
1099#else
1100/* do{...}while(FALSE) allows if(a==b) FORT(); else BORT(); */
1101#define CCALLSFSUB0( UN,LN) do{CPPPROTOCLSFSUB0(UN,LN) CFC_(UN,LN)();}while(FALSE)
1102#define CCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE)\
1103do{VVCF(T1,A1,B1) VVCF(T2,A2,B2) VVCF(T3,A3,B3) VVCF(T4,A4,B4) VVCF(T5,A5,B5) \
1104 VVCF(T6,A6,B6) VVCF(T7,A7,B7) VVCF(T8,A8,B8) VVCF(T9,A9,B9) VVCF(TA,AA,BA) \
1105 VVCF(TB,AB,BB) VVCF(TC,AC,BC) VVCF(TD,AD,BD) VVCF(TE,AE,BE) \
1106 CPPPROTOCLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
1107 ACF(LN,T1,A1,1) ACF(LN,T2,A2,2) ACF(LN,T3,A3,3) \
1108 ACF(LN,T4,A4,4) ACF(LN,T5,A5,5) ACF(LN,T6,A6,6) ACF(LN,T7,A7,7) \
1109 ACF(LN,T8,A8,8) ACF(LN,T9,A9,9) ACF(LN,TA,AA,A) ACF(LN,TB,AB,B) \
1110 ACF(LN,TC,AC,C) ACF(LN,TD,AD,D) ACF(LN,TE,AE,E) \
1111 CFC_(UN,LN)( CFARGTA14(AACF,JCF,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE) );\
1112 WCF(T1,A1,1) WCF(T2,A2,2) WCF(T3,A3,3) WCF(T4,A4,4) WCF(T5,A5,5) \
1113 WCF(T6,A6,6) WCF(T7,A7,7) WCF(T8,A8,8) WCF(T9,A9,9) WCF(TA,AA,A) \
1114 WCF(TB,AB,B) WCF(TC,AC,C) WCF(TD,AD,D) WCF(TE,AE,E) }while(FALSE)
1115#endif
1116
1117
1118#if MAX_PREPRO_ARGS>31
1119#define CCALLSFSUB15(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF)\
1120 CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,CF_0,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,0,0,0,0,0)
1121#define CCALLSFSUB16(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG)\
1122 CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,0,0,0,0)
1123#define CCALLSFSUB17(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH)\
1124 CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,0,0,0)
1125#define CCALLSFSUB18(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,AI)\
1126 CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,AI,0,0)
1127#define CCALLSFSUB19(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ)\
1128 CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,0)
1129
1130#ifdef CFSUBASFUN
1131#define CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH, \
1132 TI,TJ,TK, A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK) \
1133 CCALLSFFUN20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH, \
1134 TI,TJ,TK, A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK)
1135#else
1136#define CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH, \
1137 TI,TJ,TK, A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK) \
1138do{VVCF(T1,A1,B1) VVCF(T2,A2,B2) VVCF(T3,A3,B3) VVCF(T4,A4,B4) VVCF(T5,A5,B5) \
1139 VVCF(T6,A6,B6) VVCF(T7,A7,B7) VVCF(T8,A8,B8) VVCF(T9,A9,B9) VVCF(TA,AA,BA) \
1140 VVCF(TB,AB,BB) VVCF(TC,AC,BC) VVCF(TD,AD,BD) VVCF(TE,AE,BE) VVCF(TF,AF,BF) \
1141 VVCF(TG,AG,BG) VVCF(TH,AH,BH) VVCF(TI,AI,BI) VVCF(TJ,AJ,BJ) VVCF(TK,AK,BK) \
1142 CPPPROTOCLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK) \
1143 ACF(LN,T1,A1,1) ACF(LN,T2,A2,2) ACF(LN,T3,A3,3) ACF(LN,T4,A4,4) \
1144 ACF(LN,T5,A5,5) ACF(LN,T6,A6,6) ACF(LN,T7,A7,7) ACF(LN,T8,A8,8) \
1145 ACF(LN,T9,A9,9) ACF(LN,TA,AA,A) ACF(LN,TB,AB,B) ACF(LN,TC,AC,C) \
1146 ACF(LN,TD,AD,D) ACF(LN,TE,AE,E) ACF(LN,TF,AF,F) ACF(LN,TG,AG,G) \
1147 ACF(LN,TH,AH,H) ACF(LN,TI,AI,I) ACF(LN,TJ,AJ,J) ACF(LN,TK,AK,K) \
1148 CFC_(UN,LN)( CFARGTA20(AACF,JCF,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK) ); \
1149 WCF(T1,A1,1) WCF(T2,A2,2) WCF(T3,A3,3) WCF(T4,A4,4) WCF(T5,A5,5) WCF(T6,A6,6) \
1150 WCF(T7,A7,7) WCF(T8,A8,8) WCF(T9,A9,9) WCF(TA,AA,A) WCF(TB,AB,B) WCF(TC,AC,C) \
1151 WCF(TD,AD,D) WCF(TE,AE,E) WCF(TF,AF,F) WCF(TG,AG,G) WCF(TH,AH,H) WCF(TI,AI,I) \
1152 WCF(TJ,AJ,J) WCF(TK,AK,K) }while(FALSE)
1153#endif
1154#endif /* MAX_PREPRO_ARGS */
1155
1156/*-------------------------------------------------------------------------*/
1157
1158/* UTILITIES FOR C TO CALL FORTRAN FUNCTIONS */
1159
1160/*N.B. PROTOCCALLSFFUNn(..) generates code, whether or not the FORTRAN
1161 function is called. Therefore, especially for creator's of C header files
1162 for large FORTRAN libraries which include many functions, to reduce
1163 compile time and object code size, it may be desirable to create
1164 preprocessor directives to allow users to create code for only those
1165 functions which they use. */
1166
1167/* The following defines the maximum length string that a function can return.
1168 Of course it may be undefine-d and re-define-d before individual
1169 PROTOCCALLSFFUNn(..) as required. It would also be nice to have this derived
1170 from the individual machines' limits. */
1171#define MAX_LEN_FORTRAN_FUNCTION_STRING 0x4FE
1172
1173/* The following defines a character used by CFORTRAN.H to flag the end of a
1174 string coming out of a FORTRAN routine. */
1175#define CFORTRAN_NON_CHAR 0x7F
1176
1177#ifdef OLD_VAXC /* Prevent %CC-I-PARAMNOTUSED. */
1178#pragma nostandard
1179#endif
1180
1181#define _SEP_(TN,C,COMMA) _(__SEP_,C)(TN,COMMA)
1182#define __SEP_0(TN,COMMA)
1183#define __SEP_1(TN,COMMA) _Icf(2,SEP,TN,COMMA,0)
1184#define INT_cfSEP(T,B) _(A,B)
1185#define INTV_cfSEP(T,B) INT_cfSEP(T,B)
1186#define INTVV_cfSEP(T,B) INT_cfSEP(T,B)
1187#define INTVVV_cfSEP(T,B) INT_cfSEP(T,B)
1188#define INTVVVV_cfSEP(T,B) INT_cfSEP(T,B)
1189#define INTVVVVV_cfSEP(T,B) INT_cfSEP(T,B)
1190#define INTVVVVVV_cfSEP(T,B) INT_cfSEP(T,B)
1191#define INTVVVVVVV_cfSEP(T,B) INT_cfSEP(T,B)
1192#define PINT_cfSEP(T,B) INT_cfSEP(T,B)
1193#define PVOID_cfSEP(T,B) INT_cfSEP(T,B)
1194#define ROUTINE_cfSEP(T,B) INT_cfSEP(T,B)
1195#define SIMPLE_cfSEP(T,B) INT_cfSEP(T,B)
1196#define VOID_cfSEP(T,B) INT_cfSEP(T,B) /* For FORTRAN calls C subr.s. */
1197#define STRING_cfSEP(T,B) INT_cfSEP(T,B)
1198#define STRINGV_cfSEP(T,B) INT_cfSEP(T,B)
1199#define PSTRING_cfSEP(T,B) INT_cfSEP(T,B)
1200#define PSTRINGV_cfSEP(T,B) INT_cfSEP(T,B)
1201#define PNSTRING_cfSEP(T,B) INT_cfSEP(T,B)
1202#define PPSTRING_cfSEP(T,B) INT_cfSEP(T,B)
1203#define ZTRINGV_cfSEP(T,B) INT_cfSEP(T,B)
1204#define PZTRINGV_cfSEP(T,B) INT_cfSEP(T,B)
1205
1206#if defined(SIGNED_BYTE) || !defined(UNSIGNED_BYTE)
1207#ifdef OLD_VAXC
1208#define INTEGER_BYTE char /* Old VAXC barfs on 'signed char' */
1209#else
1210#define INTEGER_BYTE signed char /* default */
1211#endif
1212#else
1213#define INTEGER_BYTE unsigned char
1214#endif
1215#define BYTEVVVVVVV_cfTYPE INTEGER_BYTE
1216#define DOUBLEVVVVVVV_cfTYPE DOUBLE_PRECISION
1217#define FLOATVVVVVVV_cfTYPE FORTRAN_REAL
1218#define INTVVVVVVV_cfTYPE int
1219#define LOGICALVVVVVVV_cfTYPE int
1220#define LONGVVVVVVV_cfTYPE long
1221#define SHORTVVVVVVV_cfTYPE short
1222#define PBYTE_cfTYPE INTEGER_BYTE
1223#define PDOUBLE_cfTYPE DOUBLE_PRECISION
1224#define PFLOAT_cfTYPE FORTRAN_REAL
1225#define PINT_cfTYPE int
1226#define PLOGICAL_cfTYPE int
1227#define PLONG_cfTYPE long
1228#define PSHORT_cfTYPE short
1229
1230#define CFARGS0(A,T,V,W,X,Y,Z) _3(T,_cf,A)
1231#define CFARGS1(A,T,V,W,X,Y,Z) _3(T,_cf,A)(V)
1232#define CFARGS2(A,T,V,W,X,Y,Z) _3(T,_cf,A)(V,W)
1233#define CFARGS3(A,T,V,W,X,Y,Z) _3(T,_cf,A)(V,W,X)
1234#define CFARGS4(A,T,V,W,X,Y,Z) _3(T,_cf,A)(V,W,X,Y)
1235#define CFARGS5(A,T,V,W,X,Y,Z) _3(T,_cf,A)(V,W,X,Y,Z)
1236
1237#define _Icf(N,T,I,X,Y) _(I,_cfINT)(N,T,I,X,Y,0)
1238#define _Icf4(N,T,I,X,Y,Z) _(I,_cfINT)(N,T,I,X,Y,Z)
1239#define BYTE_cfINT(N,A,B,X,Y,Z) DOUBLE_cfINT(N,A,B,X,Y,Z)
1240#define DOUBLE_cfINT(N,A,B,X,Y,Z) _(CFARGS,N)(A,INT,B,X,Y,Z,0)
1241#define FLOAT_cfINT(N,A,B,X,Y,Z) DOUBLE_cfINT(N,A,B,X,Y,Z)
1242#define INT_cfINT(N,A,B,X,Y,Z) DOUBLE_cfINT(N,A,B,X,Y,Z)
1243#define LOGICAL_cfINT(N,A,B,X,Y,Z) DOUBLE_cfINT(N,A,B,X,Y,Z)
1244#define LONG_cfINT(N,A,B,X,Y,Z) DOUBLE_cfINT(N,A,B,X,Y,Z)
1245#define SHORT_cfINT(N,A,B,X,Y,Z) DOUBLE_cfINT(N,A,B,X,Y,Z)
1246#define PBYTE_cfINT(N,A,B,X,Y,Z) PDOUBLE_cfINT(N,A,B,X,Y,Z)
1247#define PDOUBLE_cfINT(N,A,B,X,Y,Z) _(CFARGS,N)(A,PINT,B,X,Y,Z,0)
1248#define PFLOAT_cfINT(N,A,B,X,Y,Z) PDOUBLE_cfINT(N,A,B,X,Y,Z)
1249#define PINT_cfINT(N,A,B,X,Y,Z) PDOUBLE_cfINT(N,A,B,X,Y,Z)
1250#define PLOGICAL_cfINT(N,A,B,X,Y,Z) PDOUBLE_cfINT(N,A,B,X,Y,Z)
1251#define PLONG_cfINT(N,A,B,X,Y,Z) PDOUBLE_cfINT(N,A,B,X,Y,Z)
1252#define PSHORT_cfINT(N,A,B,X,Y,Z) PDOUBLE_cfINT(N,A,B,X,Y,Z)
1253#define BYTEV_cfINT(N,A,B,X,Y,Z) DOUBLEV_cfINT(N,A,B,X,Y,Z)
1254#define BYTEVV_cfINT(N,A,B,X,Y,Z) DOUBLEVV_cfINT(N,A,B,X,Y,Z)
1255#define BYTEVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVV_cfINT(N,A,B,X,Y,Z)
1256#define BYTEVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)
1257#define BYTEVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)
1258#define BYTEVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)
1259#define BYTEVVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)
1260#define DOUBLEV_cfINT(N,A,B,X,Y,Z) _(CFARGS,N)(A,INTV,B,X,Y,Z,0)
1261#define DOUBLEVV_cfINT(N,A,B,X,Y,Z) _(CFARGS,N)(A,INTVV,B,X,Y,Z,0)
1262#define DOUBLEVVV_cfINT(N,A,B,X,Y,Z) _(CFARGS,N)(A,INTVVV,B,X,Y,Z,0)
1263#define DOUBLEVVVV_cfINT(N,A,B,X,Y,Z) _(CFARGS,N)(A,INTVVVV,B,X,Y,Z,0)
1264#define DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z) _(CFARGS,N)(A,INTVVVVV,B,X,Y,Z,0)
1265#define DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z) _(CFARGS,N)(A,INTVVVVVV,B,X,Y,Z,0)
1266#define DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z) _(CFARGS,N)(A,INTVVVVVVV,B,X,Y,Z,0)
1267#define FLOATV_cfINT(N,A,B,X,Y,Z) DOUBLEV_cfINT(N,A,B,X,Y,Z)
1268#define FLOATVV_cfINT(N,A,B,X,Y,Z) DOUBLEVV_cfINT(N,A,B,X,Y,Z)
1269#define FLOATVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVV_cfINT(N,A,B,X,Y,Z)
1270#define FLOATVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)
1271#define FLOATVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)
1272#define FLOATVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)
1273#define FLOATVVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)
1274#define INTV_cfINT(N,A,B,X,Y,Z) DOUBLEV_cfINT(N,A,B,X,Y,Z)
1275#define INTVV_cfINT(N,A,B,X,Y,Z) DOUBLEVV_cfINT(N,A,B,X,Y,Z)
1276#define INTVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVV_cfINT(N,A,B,X,Y,Z)
1277#define INTVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)
1278#define INTVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)
1279#define INTVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)
1280#define INTVVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)
1281#define LOGICALV_cfINT(N,A,B,X,Y,Z) DOUBLEV_cfINT(N,A,B,X,Y,Z)
1282#define LOGICALVV_cfINT(N,A,B,X,Y,Z) DOUBLEVV_cfINT(N,A,B,X,Y,Z)
1283#define LOGICALVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVV_cfINT(N,A,B,X,Y,Z)
1284#define LOGICALVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)
1285#define LOGICALVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)
1286#define LOGICALVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)
1287#define LOGICALVVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)
1288#define LONGV_cfINT(N,A,B,X,Y,Z) DOUBLEV_cfINT(N,A,B,X,Y,Z)
1289#define LONGVV_cfINT(N,A,B,X,Y,Z) DOUBLEVV_cfINT(N,A,B,X,Y,Z)
1290#define LONGVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVV_cfINT(N,A,B,X,Y,Z)
1291#define LONGVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)
1292#define LONGVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)
1293#define LONGVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)
1294#define LONGVVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)
1295#define SHORTV_cfINT(N,A,B,X,Y,Z) DOUBLEV_cfINT(N,A,B,X,Y,Z)
1296#define SHORTVV_cfINT(N,A,B,X,Y,Z) DOUBLEVV_cfINT(N,A,B,X,Y,Z)
1297#define SHORTVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVV_cfINT(N,A,B,X,Y,Z)
1298#define SHORTVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)
1299#define SHORTVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)
1300#define SHORTVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)
1301#define SHORTVVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)
1302#define PVOID_cfINT(N,A,B,X,Y,Z) _(CFARGS,N)(A,B,B,X,Y,Z,0)
1303#define ROUTINE_cfINT(N,A,B,X,Y,Z) PVOID_cfINT(N,A,B,X,Y,Z)
1304/*CRAY coughs on the first,
1305 i.e. the usual trouble of not being able to
1306 define macros to macros with arguments.
1307 New ultrix is worse, it coughs on all such uses.
1308 */
1309/*#define SIMPLE_cfINT PVOID_cfINT*/
1310#define SIMPLE_cfINT(N,A,B,X,Y,Z) PVOID_cfINT(N,A,B,X,Y,Z)
1311#define VOID_cfINT(N,A,B,X,Y,Z) PVOID_cfINT(N,A,B,X,Y,Z)
1312#define STRING_cfINT(N,A,B,X,Y,Z) PVOID_cfINT(N,A,B,X,Y,Z)
1313#define STRINGV_cfINT(N,A,B,X,Y,Z) PVOID_cfINT(N,A,B,X,Y,Z)
1314#define PSTRING_cfINT(N,A,B,X,Y,Z) PVOID_cfINT(N,A,B,X,Y,Z)
1315#define PSTRINGV_cfINT(N,A,B,X,Y,Z) PVOID_cfINT(N,A,B,X,Y,Z)
1316#define PNSTRING_cfINT(N,A,B,X,Y,Z) PVOID_cfINT(N,A,B,X,Y,Z)
1317#define PPSTRING_cfINT(N,A,B,X,Y,Z) PVOID_cfINT(N,A,B,X,Y,Z)
1318#define ZTRINGV_cfINT(N,A,B,X,Y,Z) PVOID_cfINT(N,A,B,X,Y,Z)
1319#define PZTRINGV_cfINT(N,A,B,X,Y,Z) PVOID_cfINT(N,A,B,X,Y,Z)
1320#define CF_0_cfINT(N,A,B,X,Y,Z)
1321
1322
1323#define UCF(TN,I,C) _SEP_(TN,C,COMMA) _Icf(2,U,TN,_(A,I),0)
1324#define UUCF(TN,I,C) _SEP_(TN,C,COMMA) _SEP_(TN,1,I)
1325#define UUUCF(TN,I,C) _SEP_(TN,C,COLON) _Icf(2,U,TN,_(A,I),0)
1326#define INT_cfU(T,A) _(T,VVVVVVV_cfTYPE) A
1327#define INTV_cfU(T,A) _(T,VVVVVV_cfTYPE) * A
1328#define INTVV_cfU(T,A) _(T,VVVVV_cfTYPE) * A
1329#define INTVVV_cfU(T,A) _(T,VVVV_cfTYPE) * A
1330#define INTVVVV_cfU(T,A) _(T,VVV_cfTYPE) * A
1331#define INTVVVVV_cfU(T,A) _(T,VV_cfTYPE) * A
1332#define INTVVVVVV_cfU(T,A) _(T,V_cfTYPE) * A
1333#define INTVVVVVVV_cfU(T,A) _(T,_cfTYPE) * A
1334#define PINT_cfU(T,A) _(T,_cfTYPE) * A
1335#define PVOID_cfU(T,A) void *A
1336#define ROUTINE_cfU(T,A) void (*A)(CF_NULL_PROTO)
1337#define VOID_cfU(T,A) void A /* Needed for C calls FORTRAN sub.s. */
1338#define STRING_cfU(T,A) char *A /* via VOID and wrapper. */
1339#define STRINGV_cfU(T,A) char *A
1340#define PSTRING_cfU(T,A) char *A
1341#define PSTRINGV_cfU(T,A) char *A
1342#define ZTRINGV_cfU(T,A) char *A
1343#define PZTRINGV_cfU(T,A) char *A
1344
1345/* VOID breaks U into U and UU. */
1346#define INT_cfUU(T,A) _(T,VVVVVVV_cfTYPE) A
1347#define VOID_cfUU(T,A) /* Needed for FORTRAN calls C sub.s. */
1348#define STRING_cfUU(T,A) char *A
1349
1350
1351#define BYTE_cfPU(A) CFextern INTEGER_BYTE FCALLSC_QUALIFIER A
1352#define DOUBLE_cfPU(A) CFextern DOUBLE_PRECISION FCALLSC_QUALIFIER A
1353#if ! (defined(FLOATFUNCTIONTYPE)&&defined(ASSIGNFLOAT)&&defined(RETURNFLOAT))
1354#define FLOAT_cfPU(A) CFextern FORTRAN_REAL FCALLSC_QUALIFIER A
1355#else
1356#define FLOAT_cfPU(A) CFextern FLOATFUNCTIONTYPE FCALLSC_QUALIFIER A
1357#endif
1358#define INT_cfPU(A) CFextern int FCALLSC_QUALIFIER A
1359#define LOGICAL_cfPU(A) CFextern int FCALLSC_QUALIFIER A
1360#define LONG_cfPU(A) CFextern long FCALLSC_QUALIFIER A
1361#define SHORT_cfPU(A) CFextern short FCALLSC_QUALIFIER A
1362#define STRING_cfPU(A) CFextern void FCALLSC_QUALIFIER A
1363#define VOID_cfPU(A) CFextern void FCALLSC_QUALIFIER A
1364
1365#define BYTE_cfE INTEGER_BYTE A0;
1366#define DOUBLE_cfE DOUBLE_PRECISION A0;
1367#if ! (defined(FLOATFUNCTIONTYPE)&&defined(ASSIGNFLOAT)&&defined(RETURNFLOAT))
1368#define FLOAT_cfE FORTRAN_REAL A0;
1369#else
1370#define FLOAT_cfE FORTRAN_REAL AA0; FLOATFUNCTIONTYPE A0;
1371#endif
1372#define INT_cfE int A0;
1373#define LOGICAL_cfE int A0;
1374#define LONG_cfE long A0;
1375#define SHORT_cfE short A0;
1376#define VOID_cfE
1377#ifdef vmsFortran
1378#define STRING_cfE static char AA0[1+MAX_LEN_FORTRAN_FUNCTION_STRING]; \
1379 static fstring A0 = \
1380 {MAX_LEN_FORTRAN_FUNCTION_STRING,DSC$K_DTYPE_T,DSC$K_CLASS_S,AA0};\
1381 memset(AA0, CFORTRAN_NON_CHAR, MAX_LEN_FORTRAN_FUNCTION_STRING);\
1382 *(AA0+MAX_LEN_FORTRAN_FUNCTION_STRING)='\0';
1383#else
1384#ifdef CRAYFortran
1385#define STRING_cfE static char AA0[1+MAX_LEN_FORTRAN_FUNCTION_STRING]; \
1386 static _fcd A0; *(AA0+MAX_LEN_FORTRAN_FUNCTION_STRING)='\0';\
1387 memset(AA0,CFORTRAN_NON_CHAR, MAX_LEN_FORTRAN_FUNCTION_STRING);\
1388 A0 = _cptofcd(AA0,MAX_LEN_FORTRAN_FUNCTION_STRING);
1389#else
1390/* 'cc: SC3.0.1 13 Jul 1994' barfs on char A0[0x4FE+1];
1391 * char A0[0x4FE +1]; char A0[1+0x4FE]; are both OK. */
1392#define STRING_cfE static char A0[1+MAX_LEN_FORTRAN_FUNCTION_STRING]; \
1393 memset(A0, CFORTRAN_NON_CHAR, \
1394 MAX_LEN_FORTRAN_FUNCTION_STRING); \
1395 *(A0+MAX_LEN_FORTRAN_FUNCTION_STRING)='\0';
1396#endif
1397#endif
1398/* ESTRING must use static char. array which is guaranteed to exist after
1399 function returns. */
1400
1401/* N.B.i) The diff. for 0 (Zero) and >=1 arguments.
1402 ii)That the following create an unmatched bracket, i.e. '(', which
1403 must of course be matched in the call.
1404 iii)Commas must be handled very carefully */
1405#define INT_cfGZ(T,UN,LN) A0=CFC_(UN,LN)(
1406#define VOID_cfGZ(T,UN,LN) CFC_(UN,LN)(
1407#ifdef vmsFortran
1408#define STRING_cfGZ(T,UN,LN) CFC_(UN,LN)(&A0
1409#else
1410#if defined(CRAYFortran) || defined(AbsoftUNIXFortran)
1411#define STRING_cfGZ(T,UN,LN) CFC_(UN,LN)( A0
1412#else
1413#define STRING_cfGZ(T,UN,LN) CFC_(UN,LN)( A0,MAX_LEN_FORTRAN_FUNCTION_STRING
1414#endif
1415#endif
1416
1417#define INT_cfG(T,UN,LN) INT_cfGZ(T,UN,LN)
1418#define VOID_cfG(T,UN,LN) VOID_cfGZ(T,UN,LN)
1419#define STRING_cfG(T,UN,LN) STRING_cfGZ(T,UN,LN), /*, is only diff. from _cfG */
1420
1421#define BYTEVVVVVVV_cfPP
1422#define INTVVVVVVV_cfPP /* These complement FLOATVVVVVVV_cfPP. */
1423#define DOUBLEVVVVVVV_cfPP
1424#define LOGICALVVVVVVV_cfPP
1425#define LONGVVVVVVV_cfPP
1426#define SHORTVVVVVVV_cfPP
1427#define PBYTE_cfPP
1428#define PINT_cfPP
1429#define PDOUBLE_cfPP
1430#define PLOGICAL_cfPP
1431#define PLONG_cfPP
1432#define PSHORT_cfPP
1433#define PFLOAT_cfPP FLOATVVVVVVV_cfPP
1434
1435#define BCF(TN,AN,C) _SEP_(TN,C,COMMA) _Icf(2,B,TN,AN,0)
1436#define INT_cfB(T,A) (_(T,VVVVVVV_cfTYPE)) A
1437#define INTV_cfB(T,A) A
1438#define INTVV_cfB(T,A) (A)[0]
1439#define INTVVV_cfB(T,A) (A)[0][0]
1440#define INTVVVV_cfB(T,A) (A)[0][0][0]
1441#define INTVVVVV_cfB(T,A) (A)[0][0][0][0]
1442#define INTVVVVVV_cfB(T,A) (A)[0][0][0][0][0]
1443#define INTVVVVVVV_cfB(T,A) (A)[0][0][0][0][0][0]
1444#define PINT_cfB(T,A) _(T,_cfPP)&A
1445#define STRING_cfB(T,A) (char *) A
1446#define STRINGV_cfB(T,A) (char *) A
1447#define PSTRING_cfB(T,A) (char *) A
1448#define PSTRINGV_cfB(T,A) (char *) A
1449#define PVOID_cfB(T,A) (void *) A
1450#define ROUTINE_cfB(T,A) (void(*)(CF_NULL_PROTO))A
1451#define ZTRINGV_cfB(T,A) (char *) A
1452#define PZTRINGV_cfB(T,A) (char *) A
1453
1454#define SCF(TN,NAME,I,A) _(TN,_cfSTR)(3,S,NAME,I,A,0,0)
1455#define DEFAULT_cfS(M,I,A)
1456#define LOGICAL_cfS(M,I,A)
1457#define PLOGICAL_cfS(M,I,A)
1458#define STRING_cfS(M,I,A) ,sizeof(A)
1459#define STRINGV_cfS(M,I,A) ,( (unsigned)0xFFFF*firstindexlength(A) \
1460 +secondindexlength(A))
1461#define PSTRING_cfS(M,I,A) ,sizeof(A)
1462#define PSTRINGV_cfS(M,I,A) STRINGV_cfS(M,I,A)
1463#define ZTRINGV_cfS(M,I,A)
1464#define PZTRINGV_cfS(M,I,A)
1465
1466#define HCF(TN,I) _(TN,_cfSTR)(3,H,COMMA, H,_(C,I),0,0)
1467#define HHCF(TN,I) _(TN,_cfSTR)(3,H,COMMA,HH,_(C,I),0,0)
1468#define HHHCF(TN,I) _(TN,_cfSTR)(3,H,COLON, H,_(C,I),0,0)
1469#define H_CF_SPECIAL unsigned
1470#define HH_CF_SPECIAL
1471#define DEFAULT_cfH(M,I,A)
1472#define LOGICAL_cfH(S,U,B)
1473#define PLOGICAL_cfH(S,U,B)
1474#define STRING_cfH(S,U,B) _(A,S) _(U,_CF_SPECIAL) B
1475#define STRINGV_cfH(S,U,B) STRING_cfH(S,U,B)
1476#define PSTRING_cfH(S,U,B) STRING_cfH(S,U,B)
1477#define PSTRINGV_cfH(S,U,B) STRING_cfH(S,U,B)
1478#define PNSTRING_cfH(S,U,B) STRING_cfH(S,U,B)
1479#define PPSTRING_cfH(S,U,B) STRING_cfH(S,U,B)
1480#define ZTRINGV_cfH(S,U,B)
1481#define PZTRINGV_cfH(S,U,B)
1482
1483/* Need VOID_cfSTR because Absoft forced function types go through _cfSTR. */
1484/* No spaces inside expansion. They screws up macro catenation kludge. */
1485#define VOID_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1486#define BYTE_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1487#define DOUBLE_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1488#define FLOAT_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1489#define INT_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1490#define LOGICAL_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,LOGICAL,A,B,C,D,E)
1491#define LONG_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1492#define SHORT_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1493#define BYTEV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1494#define BYTEVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1495#define BYTEVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1496#define BYTEVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1497#define BYTEVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1498#define BYTEVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1499#define BYTEVVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1500#define DOUBLEV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1501#define DOUBLEVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1502#define DOUBLEVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1503#define DOUBLEVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1504#define DOUBLEVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1505#define DOUBLEVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1506#define DOUBLEVVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1507#define FLOATV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1508#define FLOATVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1509#define FLOATVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1510#define FLOATVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1511#define FLOATVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1512#define FLOATVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1513#define FLOATVVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1514#define INTV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1515#define INTVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1516#define INTVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1517#define INTVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1518#define INTVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1519#define INTVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1520#define INTVVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1521#define LOGICALV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1522#define LOGICALVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1523#define LOGICALVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1524#define LOGICALVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1525#define LOGICALVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1526#define LOGICALVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1527#define LOGICALVVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1528#define LONGV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1529#define LONGVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1530#define LONGVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1531#define LONGVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1532#define LONGVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1533#define LONGVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1534#define LONGVVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1535#define SHORTV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1536#define SHORTVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1537#define SHORTVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1538#define SHORTVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1539#define SHORTVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1540#define SHORTVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1541#define SHORTVVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1542#define PBYTE_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1543#define PDOUBLE_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1544#define PFLOAT_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1545#define PINT_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1546#define PLOGICAL_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,PLOGICAL,A,B,C,D,E)
1547#define PLONG_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1548#define PSHORT_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1549#define STRING_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,STRING,A,B,C,D,E)
1550#define PSTRING_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,PSTRING,A,B,C,D,E)
1551#define STRINGV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,STRINGV,A,B,C,D,E)
1552#define PSTRINGV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,PSTRINGV,A,B,C,D,E)
1553#define PNSTRING_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,PNSTRING,A,B,C,D,E)
1554#define PPSTRING_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,PPSTRING,A,B,C,D,E)
1555#define PVOID_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1556#define ROUTINE_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1557#define SIMPLE_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)
1558#define ZTRINGV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,ZTRINGV,A,B,C,D,E)
1559#define PZTRINGV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,PZTRINGV,A,B,C,D,E)
1560#define CF_0_cfSTR(N,T,A,B,C,D,E)
1561
1562/* See ACF table comments, which explain why CCF was split into two. */
1563#define CCF(NAME,TN,I) _(TN,_cfSTR)(5,C,NAME,I,_(A,I),_(B,I),_(C,I))
1564#define DEFAULT_cfC(M,I,A,B,C)
1565#define LOGICAL_cfC(M,I,A,B,C) A=C2FLOGICAL( A);
1566#define PLOGICAL_cfC(M,I,A,B,C) *A=C2FLOGICAL(*A);
1567#ifdef vmsFortran
1568#define STRING_cfC(M,I,A,B,C) (B.clen=strlen(A),B.f.dsc$a_pointer=A, \
1569 C==sizeof(char*)||C==(unsigned)(B.clen+1)?B.f.dsc$w_length=B.clen: \
1570 (memset((A)+B.clen,' ',C-B.clen-1),A[B.f.dsc$w_length=C-1]='\0'));
1571 /* PSTRING_cfC to beware of array A which does not contain any \0. */
1572#define PSTRING_cfC(M,I,A,B,C) (B.dsc$a_pointer=A, C==sizeof(char*) ? \
1573 B.dsc$w_length=strlen(A): (A[C-1]='\0',B.dsc$w_length=strlen(A), \
1574 memset((A)+B.dsc$w_length,' ',C-B.dsc$w_length-1), B.dsc$w_length=C-1));
1575#else
1576#define STRING_cfC(M,I,A,B,C) (B.clen=strlen(A), \
1577 C==sizeof(char*)||C==(unsigned)(B.clen+1)?B.flen=B.clen: \
1578 (memset((A)+B.clen,' ',C-B.clen-1),A[B.flen=C-1]='\0'));
1579#define PSTRING_cfC(M,I,A,B,C) (C==sizeof(char*)? B=strlen(A): \
1580 (A[C-1]='\0',B=strlen(A),memset((A)+B,' ',C-B-1),B=C-1));
1581#endif
1582 /* For CRAYFortran for (P)STRINGV_cfC, B.fs is set, but irrelevant. */
1583#define STRINGV_cfC(M,I,A,B,C) \
1584 AATRINGV_cfA( A,B,(C/0xFFFF)*(C%0xFFFF),C/0xFFFF,C%0xFFFF)
1585#define PSTRINGV_cfC(M,I,A,B,C) \
1586 APATRINGV_cfA( A,B,(C/0xFFFF)*(C%0xFFFF),C/0xFFFF,C%0xFFFF)
1587#define ZTRINGV_cfC(M,I,A,B,C) \
1588 AATRINGV_cfA( A,B, (_3(M,_ELEMS_,I))*((_3(M,_ELEMLEN_,I))+1), \
1589 (_3(M,_ELEMS_,I)), (_3(M,_ELEMLEN_,I))+1 )
1590#define PZTRINGV_cfC(M,I,A,B,C) \
1591 APATRINGV_cfA( A,B, (_3(M,_ELEMS_,I))*((_3(M,_ELEMLEN_,I))+1), \
1592 (_3(M,_ELEMS_,I)), (_3(M,_ELEMLEN_,I))+1 )
1593
1594#define BYTE_cfCCC(A,B) &A
1595#define DOUBLE_cfCCC(A,B) &A
1596#if !defined(__CF__KnR)
1597#define FLOAT_cfCCC(A,B) &A
1598 /* Although the VAX doesn't, at least the */
1599#else /* HP and K&R mips promote float arg.'s of */
1600#define FLOAT_cfCCC(A,B) &B /* unprototyped functions to double. Cannot */
1601#endif /* use A here to pass the argument to FORTRAN. */
1602#define INT_cfCCC(A,B) &A
1603#define LOGICAL_cfCCC(A,B) &A
1604#define LONG_cfCCC(A,B) &A
1605#define SHORT_cfCCC(A,B) &A
1606#define PBYTE_cfCCC(A,B) A
1607#define PDOUBLE_cfCCC(A,B) A
1608#define PFLOAT_cfCCC(A,B) A
1609#define PINT_cfCCC(A,B) A
1610#define PLOGICAL_cfCCC(A,B) B=A /* B used to keep a common W table. */
1611#define PLONG_cfCCC(A,B) A
1612#define PSHORT_cfCCC(A,B) A
1613
1614#define CCCF(TN,I,M) _SEP_(TN,M,COMMA) _Icf(3,CC,TN,_(A,I),_(B,I))
1615#define INT_cfCC(T,A,B) _(T,_cfCCC)(A,B)
1616#define INTV_cfCC(T,A,B) A
1617#define INTVV_cfCC(T,A,B) A
1618#define INTVVV_cfCC(T,A,B) A
1619#define INTVVVV_cfCC(T,A,B) A
1620#define INTVVVVV_cfCC(T,A,B) A
1621#define INTVVVVVV_cfCC(T,A,B) A
1622#define INTVVVVVVV_cfCC(T,A,B) A
1623#define PINT_cfCC(T,A,B) _(T,_cfCCC)(A,B)
1624#define PVOID_cfCC(T,A,B) A
1625#if defined(apolloFortran) || defined(hpuxFortran800) || defined(AbsoftUNIXFortran)
1626#define ROUTINE_cfCC(T,A,B) &A
1627#else
1628#define ROUTINE_cfCC(T,A,B) A
1629#endif
1630#define SIMPLE_cfCC(T,A,B) A
1631#ifdef vmsFortran
1632#define STRING_cfCC(T,A,B) &B.f
1633#define STRINGV_cfCC(T,A,B) &B
1634#define PSTRING_cfCC(T,A,B) &B
1635#define PSTRINGV_cfCC(T,A,B) &B
1636#else
1637#ifdef CRAYFortran
1638#define STRING_cfCC(T,A,B) _cptofcd(A,B.flen)
1639#define STRINGV_cfCC(T,A,B) _cptofcd(B.s,B.flen)
1640#define PSTRING_cfCC(T,A,B) _cptofcd(A,B)
1641#define PSTRINGV_cfCC(T,A,B) _cptofcd(A,B.flen)
1642#else
1643#define STRING_cfCC(T,A,B) A
1644#define STRINGV_cfCC(T,A,B) B.fs
1645#define PSTRING_cfCC(T,A,B) A
1646#define PSTRINGV_cfCC(T,A,B) B.fs
1647#endif
1648#endif
1649#define ZTRINGV_cfCC(T,A,B) STRINGV_cfCC(T,A,B)
1650#define PZTRINGV_cfCC(T,A,B) PSTRINGV_cfCC(T,A,B)
1651
1652#define BYTE_cfX return A0;
1653#define DOUBLE_cfX return A0;
1654#if ! (defined(FLOATFUNCTIONTYPE)&&defined(ASSIGNFLOAT)&&defined(RETURNFLOAT))
1655#define FLOAT_cfX return A0;
1656#else
1657#define FLOAT_cfX ASSIGNFLOAT(AA0,A0); return AA0;
1658#endif
1659#define INT_cfX return A0;
1660#define LOGICAL_cfX return F2CLOGICAL(A0);
1661#define LONG_cfX return A0;
1662#define SHORT_cfX return A0;
1663#define VOID_cfX return ;
1664#if defined(vmsFortran) || defined(CRAYFortran)
1665#define STRING_cfX return kill_trailing( \
1666 kill_trailing(AA0,CFORTRAN_NON_CHAR),' ');
1667#else
1668#define STRING_cfX return kill_trailing( \
1669 kill_trailing( A0,CFORTRAN_NON_CHAR),' ');
1670#endif
1671
1672#define CFFUN(NAME) _(__cf__,NAME)
1673
1674/* Note that we don't use LN here, but we keep it for consistency. */
1675#define CCALLSFFUN0(UN,LN) CFFUN(UN)()
1676
1677#ifdef OLD_VAXC /* Allow %CC-I-PARAMNOTUSED. */
1678#pragma standard
1679#endif
1680
1681#define CCALLSFFUN1( UN,LN,T1, A1) \
1682 CCALLSFFUN5 (UN,LN,T1,CF_0,CF_0,CF_0,CF_0,A1,0,0,0,0)
1683#define CCALLSFFUN2( UN,LN,T1,T2, A1,A2) \
1684 CCALLSFFUN5 (UN,LN,T1,T2,CF_0,CF_0,CF_0,A1,A2,0,0,0)
1685#define CCALLSFFUN3( UN,LN,T1,T2,T3, A1,A2,A3) \
1686 CCALLSFFUN5 (UN,LN,T1,T2,T3,CF_0,CF_0,A1,A2,A3,0,0)
1687#define CCALLSFFUN4( UN,LN,T1,T2,T3,T4, A1,A2,A3,A4)\
1688 CCALLSFFUN5 (UN,LN,T1,T2,T3,T4,CF_0,A1,A2,A3,A4,0)
1689#define CCALLSFFUN5( UN,LN,T1,T2,T3,T4,T5, A1,A2,A3,A4,A5) \
1690 CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,0,0,0,0,0)
1691#define CCALLSFFUN6( UN,LN,T1,T2,T3,T4,T5,T6, A1,A2,A3,A4,A5,A6) \
1692 CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,0,0,0,0)
1693#define CCALLSFFUN7( UN,LN,T1,T2,T3,T4,T5,T6,T7, A1,A2,A3,A4,A5,A6,A7) \
1694 CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,0,0,0)
1695#define CCALLSFFUN8( UN,LN,T1,T2,T3,T4,T5,T6,T7,T8, A1,A2,A3,A4,A5,A6,A7,A8) \
1696 CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,0,0)
1697#define CCALLSFFUN9( UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,A1,A2,A3,A4,A5,A6,A7,A8,A9)\
1698 CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,0)
1699#define CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA)\
1700 CCALLSFFUN14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,0,0,0,0)
1701#define CCALLSFFUN11(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB)\
1702 CCALLSFFUN14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,0,0,0)
1703#define CCALLSFFUN12(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC)\
1704 CCALLSFFUN14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,0,0)
1705#define CCALLSFFUN13(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD)\
1706 CCALLSFFUN14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,0)
1707
1708#define CCALLSFFUN14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE)\
1709((CFFUN(UN)( BCF(T1,A1,0) BCF(T2,A2,1) BCF(T3,A3,1) BCF(T4,A4,1) BCF(T5,A5,1) \
1710 BCF(T6,A6,1) BCF(T7,A7,1) BCF(T8,A8,1) BCF(T9,A9,1) BCF(TA,AA,1) \
1711 BCF(TB,AB,1) BCF(TC,AC,1) BCF(TD,AD,1) BCF(TE,AE,1) \
1712 SCF(T1,LN,1,A1) SCF(T2,LN,2,A2) SCF(T3,LN,3,A3) SCF(T4,LN,4,A4) \
1713 SCF(T5,LN,5,A5) SCF(T6,LN,6,A6) SCF(T7,LN,7,A7) SCF(T8,LN,8,A8) \
1714 SCF(T9,LN,9,A9) SCF(TA,LN,A,AA) SCF(TB,LN,B,AB) SCF(TC,LN,C,AC) \
1715 SCF(TD,LN,D,AD))))
1716
1717/* N.B. Create a separate function instead of using (call function, function
1718value here) because in order to create the variables needed for the input
1719arg.'s which may be const.'s one has to do the creation within {}, but these
1720can never be placed within ()'s. Therefore one must create wrapper functions.
1721gcc, on the other hand may be able to avoid the wrapper functions. */
1722
1723/* Prototypes are needed to correctly handle the value returned correctly. N.B.
1724Can only have prototype arg.'s with difficulty, a la G... table since FORTRAN
1725functions returning strings have extra arg.'s. Don't bother, since this only
1726causes a compiler warning to come up when one uses FCALLSCFUNn and CCALLSFFUNn
1727for the same function in the same source code. Something done by the experts in
1728debugging only.*/
1729
1730#define PROTOCCALLSFFUN0(F,UN,LN) \
1731_(F,_cfPU)( CFC_(UN,LN))(CF_NULL_PROTO); \
1732static _Icf(2,U,F,CFFUN(UN),0)() {_(F,_cfE) _Icf(3,GZ,F,UN,LN) ABSOFT_cf1(F));_(F,_cfX)}
1733
1734#define PROTOCCALLSFFUN1( T0,UN,LN,T1) \
1735 PROTOCCALLSFFUN5 (T0,UN,LN,T1,CF_0,CF_0,CF_0,CF_0)
1736#define PROTOCCALLSFFUN2( T0,UN,LN,T1,T2) \
1737 PROTOCCALLSFFUN5 (T0,UN,LN,T1,T2,CF_0,CF_0,CF_0)
1738#define PROTOCCALLSFFUN3( T0,UN,LN,T1,T2,T3) \
1739 PROTOCCALLSFFUN5 (T0,UN,LN,T1,T2,T3,CF_0,CF_0)
1740#define PROTOCCALLSFFUN4( T0,UN,LN,T1,T2,T3,T4) \
1741 PROTOCCALLSFFUN5 (T0,UN,LN,T1,T2,T3,T4,CF_0)
1742#define PROTOCCALLSFFUN5( T0,UN,LN,T1,T2,T3,T4,T5) \
1743 PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0)
1744#define PROTOCCALLSFFUN6( T0,UN,LN,T1,T2,T3,T4,T5,T6) \
1745 PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0)
1746#define PROTOCCALLSFFUN7( T0,UN,LN,T1,T2,T3,T4,T5,T6,T7) \
1747 PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0)
1748#define PROTOCCALLSFFUN8( T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8) \
1749 PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0)
1750#define PROTOCCALLSFFUN9( T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9) \
1751 PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0)
1752#define PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA) \
1753 PROTOCCALLSFFUN14(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0)
1754#define PROTOCCALLSFFUN11(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB) \
1755 PROTOCCALLSFFUN14(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0)
1756#define PROTOCCALLSFFUN12(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC) \
1757 PROTOCCALLSFFUN14(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0)
1758#define PROTOCCALLSFFUN13(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD) \
1759 PROTOCCALLSFFUN14(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0)
1760
1761/* HP/UX 9.01 cc requires the blank between '_Icf(3,G,T0,UN,LN) CCCF(T1,1,0)' */
1762
1763#ifndef __CF__KnR
1764#define PROTOCCALLSFFUN14(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
1765 _(T0,_cfPU)(CFC_(UN,LN))(CF_NULL_PROTO); static _Icf(2,U,T0,CFFUN(UN),0)( \
1766 CFARGT14FS(UCF,HCF,_Z,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) ) \
1767{ CFARGT14S(VCF,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) _(T0,_cfE) \
1768 CCF(LN,T1,1) CCF(LN,T2,2) CCF(LN,T3,3) CCF(LN,T4,4) CCF(LN,T5,5) \
1769 CCF(LN,T6,6) CCF(LN,T7,7) CCF(LN,T8,8) CCF(LN,T9,9) CCF(LN,TA,A) \
1770 CCF(LN,TB,B) CCF(LN,TC,C) CCF(LN,TD,D) CCF(LN,TE,E) _Icf(3,G,T0,UN,LN) \
1771 CFARGT14(CCCF,JCF,ABSOFT_cf1(T0),T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)); \
1772 WCF(T1,A1,1) WCF(T2,A2,2) WCF(T3,A3,3) WCF(T4,A4,4) WCF(T5,A5,5) \
1773 WCF(T6,A6,6) WCF(T7,A7,7) WCF(T8,A8,8) WCF(T9,A9,9) WCF(TA,AA,A) \
1774 WCF(TB,AB,B) WCF(TC,AC,C) WCF(TD,AD,D) WCF(TE,AE,E) _(T0,_cfX)}
1775#else
1776#define PROTOCCALLSFFUN14(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
1777 _(T0,_cfPU)(CFC_(UN,LN))(CF_NULL_PROTO); static _Icf(2,U,T0,CFFUN(UN),0)( \
1778 CFARGT14FS(UUCF,HHCF,_Z,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) ) \
1779 CFARGT14FS(UUUCF,HHHCF,_Z,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) ; \
1780{ CFARGT14S(VCF,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) _(T0,_cfE) \
1781 CCF(LN,T1,1) CCF(LN,T2,2) CCF(LN,T3,3) CCF(LN,T4,4) CCF(LN,T5,5) \
1782 CCF(LN,T6,6) CCF(LN,T7,7) CCF(LN,T8,8) CCF(LN,T9,9) CCF(LN,TA,A) \
1783 CCF(LN,TB,B) CCF(LN,TC,C) CCF(LN,TD,D) CCF(LN,TE,E) _Icf(3,G,T0,UN,LN) \
1784 CFARGT14(CCCF,JCF,ABSOFT_cf1(T0),T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)); \
1785 WCF(T1,A1,1) WCF(T2,A2,2) WCF(T3,A3,3) WCF(T4,A4,4) WCF(T5,A5,5) \
1786 WCF(T6,A6,6) WCF(T7,A7,7) WCF(T8,A8,8) WCF(T9,A9,9) WCF(TA,AA,A) \
1787 WCF(TB,AB,B) WCF(TC,AC,C) WCF(TD,AD,D) WCF(TE,AE,E) _(T0,_cfX)}
1788#endif
1789
1790/*-------------------------------------------------------------------------*/
1791
1792/* UTILITIES FOR FORTRAN TO CALL C ROUTINES */
1793
1794#ifdef OLD_VAXC /* Prevent %CC-I-PARAMNOTUSED. */
1795#pragma nostandard
1796#endif
1797
1798#if defined(vmsFortran) || defined(CRAYFortran)
1799#define DCF(TN,I)
1800#define DDCF(TN,I)
1801#define DDDCF(TN,I)
1802#else
1803#define DCF(TN,I) HCF(TN,I)
1804#define DDCF(TN,I) HHCF(TN,I)
1805#define DDDCF(TN,I) HHHCF(TN,I)
1806#endif
1807
1808#define QCF(TN,I) _(TN,_cfSTR)(1,Q,_(B,I), 0,0,0,0)
1809#define DEFAULT_cfQ(B)
1810#define LOGICAL_cfQ(B)
1811#define PLOGICAL_cfQ(B)
1812#define STRINGV_cfQ(B) char *B; unsigned int _(B,N);
1813#define STRING_cfQ(B) char *B=NULL;
1814#define PSTRING_cfQ(B) char *B=NULL;
1815#define PSTRINGV_cfQ(B) STRINGV_cfQ(B)
1816#define PNSTRING_cfQ(B) char *B=NULL;
1817#define PPSTRING_cfQ(B)
1818
1819#ifdef __sgi /* Else SGI gives warning 182 contrary to its C LRM A.17.7 */
1820#define ROUTINE_orig *(void**)&
1821#else
1822#define ROUTINE_orig (void *)
1823#endif
1824
1825#define ROUTINE_1 ROUTINE_orig
1826#define ROUTINE_2 ROUTINE_orig
1827#define ROUTINE_3 ROUTINE_orig
1828#define ROUTINE_4 ROUTINE_orig
1829#define ROUTINE_5 ROUTINE_orig
1830#define ROUTINE_6 ROUTINE_orig
1831#define ROUTINE_7 ROUTINE_orig
1832#define ROUTINE_8 ROUTINE_orig
1833#define ROUTINE_9 ROUTINE_orig
1834#define ROUTINE_10 ROUTINE_orig
1835#define ROUTINE_11 ROUTINE_orig
1836#define ROUTINE_12 ROUTINE_orig
1837#define ROUTINE_13 ROUTINE_orig
1838#define ROUTINE_14 ROUTINE_orig
1839
1840#define TCF(NAME,TN,I,M) _SEP_(TN,M,COMMA) _(TN,_cfT)(NAME,I,_(A,I),_(B,I),_(C,I))
1841#define BYTE_cfT(M,I,A,B,D) *A
1842#define DOUBLE_cfT(M,I,A,B,D) *A
1843#define FLOAT_cfT(M,I,A,B,D) *A
1844#define INT_cfT(M,I,A,B,D) *A
1845#define LOGICAL_cfT(M,I,A,B,D) F2CLOGICAL(*A)
1846#define LONG_cfT(M,I,A,B,D) *A
1847#define SHORT_cfT(M,I,A,B,D) *A
1848#define BYTEV_cfT(M,I,A,B,D) A
1849#define DOUBLEV_cfT(M,I,A,B,D) A
1850#define FLOATV_cfT(M,I,A,B,D) VOIDP A
1851#define INTV_cfT(M,I,A,B,D) A
1852#define LOGICALV_cfT(M,I,A,B,D) A
1853#define LONGV_cfT(M,I,A,B,D) A
1854#define SHORTV_cfT(M,I,A,B,D) A
1855#define BYTEVV_cfT(M,I,A,B,D) (void *)A /* We have to cast to void *, */
1856#define BYTEVVV_cfT(M,I,A,B,D) (void *)A /* since we don't know the */
1857#define BYTEVVVV_cfT(M,I,A,B,D) (void *)A /* dimensions of the array. */
1858#define BYTEVVVVV_cfT(M,I,A,B,D) (void *)A /* i.e. Unfortunately, can't */
1859#define BYTEVVVVVV_cfT(M,I,A,B,D) (void *)A /* check that the type */
1860#define BYTEVVVVVVV_cfT(M,I,A,B,D) (void *)A /* matches the prototype. */
1861#define DOUBLEVV_cfT(M,I,A,B,D) (void *)A
1862#define DOUBLEVVV_cfT(M,I,A,B,D) (void *)A
1863#define DOUBLEVVVV_cfT(M,I,A,B,D) (void *)A
1864#define DOUBLEVVVVV_cfT(M,I,A,B,D) (void *)A
1865#define DOUBLEVVVVVV_cfT(M,I,A,B,D) (void *)A
1866#define DOUBLEVVVVVVV_cfT(M,I,A,B,D) (void *)A
1867#define FLOATVV_cfT(M,I,A,B,D) (void *)A
1868#define FLOATVVV_cfT(M,I,A,B,D) (void *)A
1869#define FLOATVVVV_cfT(M,I,A,B,D) (void *)A
1870#define FLOATVVVVV_cfT(M,I,A,B,D) (void *)A
1871#define FLOATVVVVVV_cfT(M,I,A,B,D) (void *)A
1872#define FLOATVVVVVVV_cfT(M,I,A,B,D) (void *)A
1873#define INTVV_cfT(M,I,A,B,D) (void *)A
1874#define INTVVV_cfT(M,I,A,B,D) (void *)A
1875#define INTVVVV_cfT(M,I,A,B,D) (void *)A
1876#define INTVVVVV_cfT(M,I,A,B,D) (void *)A
1877#define INTVVVVVV_cfT(M,I,A,B,D) (void *)A
1878#define INTVVVVVVV_cfT(M,I,A,B,D) (void *)A
1879#define LOGICALVV_cfT(M,I,A,B,D) (void *)A
1880#define LOGICALVVV_cfT(M,I,A,B,D) (void *)A
1881#define LOGICALVVVV_cfT(M,I,A,B,D) (void *)A
1882#define LOGICALVVVVV_cfT(M,I,A,B,D) (void *)A
1883#define LOGICALVVVVVV_cfT(M,I,A,B,D) (void *)A
1884#define LOGICALVVVVVVV_cfT(M,I,A,B,D) (void *)A
1885#define LONGVV_cfT(M,I,A,B,D) (void *)A
1886#define LONGVVV_cfT(M,I,A,B,D) (void *)A
1887#define LONGVVVV_cfT(M,I,A,B,D) (void *)A
1888#define LONGVVVVV_cfT(M,I,A,B,D) (void *)A
1889#define LONGVVVVVV_cfT(M,I,A,B,D) (void *)A
1890#define LONGVVVVVVV_cfT(M,I,A,B,D) (void *)A
1891#define SHORTVV_cfT(M,I,A,B,D) (void *)A
1892#define SHORTVVV_cfT(M,I,A,B,D) (void *)A
1893#define SHORTVVVV_cfT(M,I,A,B,D) (void *)A
1894#define SHORTVVVVV_cfT(M,I,A,B,D) (void *)A
1895#define SHORTVVVVVV_cfT(M,I,A,B,D) (void *)A
1896#define SHORTVVVVVVV_cfT(M,I,A,B,D) (void *)A
1897#define PBYTE_cfT(M,I,A,B,D) A
1898#define PDOUBLE_cfT(M,I,A,B,D) A
1899#define PFLOAT_cfT(M,I,A,B,D) VOIDP A
1900#define PINT_cfT(M,I,A,B,D) A
1901#define PLOGICAL_cfT(M,I,A,B,D) ((*A=F2CLOGICAL(*A)),A)
1902#define PLONG_cfT(M,I,A,B,D) A
1903#define PSHORT_cfT(M,I,A,B,D) A
1904#define PVOID_cfT(M,I,A,B,D) A
1905#if defined(apolloFortran) || defined(hpuxFortran800) || defined(AbsoftUNIXFortran)
1906#define ROUTINE_cfT(M,I,A,B,D) _(ROUTINE_,I) (*A)
1907#else
1908#define ROUTINE_cfT(M,I,A,B,D) _(ROUTINE_,I) A
1909#endif
1910/* A == pointer to the characters
1911 D == length of the string, or of an element in an array of strings
1912 E == number of elements in an array of strings */
1913#define TTSTR( A,B,D) \
1914 ((B=(char*)malloc(D+1))[D]='\0', memcpy(B,A,D), kill_trailing(B,' '))
1915#define TTTTSTR( A,B,D) (!(D<4||A[0]||A[1]||A[2]||A[3]))?NULL: \
1916 memchr(A,'\0',D) ?A : TTSTR(A,B,D)
1917#define TTTTSTRV( A,B,D,E) (_(B,N)=E,B=(char*)malloc(_(B,N)*(D+1)), (void *) \
1918 vkill_trailing(f2cstrv(A,B,D+1, _(B,N)*(D+1)), D+1,_(B,N)*(D+1),' '))
1919#ifdef vmsFortran
1920#define STRING_cfT(M,I,A,B,D) TTTTSTR( A->dsc$a_pointer,B,A->dsc$w_length)
1921#define STRINGV_cfT(M,I,A,B,D) TTTTSTRV(A->dsc$a_pointer, B, \
1922 A->dsc$w_length , A->dsc$l_m[0])
1923#define PSTRING_cfT(M,I,A,B,D) TTSTR( A->dsc$a_pointer,B,A->dsc$w_length)
1924#define PPSTRING_cfT(M,I,A,B,D) A->dsc$a_pointer
1925#else
1926#ifdef CRAYFortran
1927#define STRING_cfT(M,I,A,B,D) TTTTSTR( _fcdtocp(A),B,_fcdlen(A))
1928#define STRINGV_cfT(M,I,A,B,D) TTTTSTRV(_fcdtocp(A),B,_fcdlen(A), \
1929 num_elem(_fcdtocp(A),_fcdlen(A),_3(M,_STRV_A,I)))
1930#define PSTRING_cfT(M,I,A,B,D) TTSTR( _fcdtocp(A),B,_fcdlen(A))
1931#define PPSTRING_cfT(M,I,A,B,D) _fcdtocp(A)
1932#else
1933#define STRING_cfT(M,I,A,B,D) TTTTSTR( A,B,D)
1934#define STRINGV_cfT(M,I,A,B,D) TTTTSTRV(A,B,D, num_elem(A,D,_3(M,_STRV_A,I)))
1935#define PSTRING_cfT(M,I,A,B,D) TTSTR( A,B,D)
1936#define PPSTRING_cfT(M,I,A,B,D) A
1937#endif
1938#endif
1939#define PNSTRING_cfT(M,I,A,B,D) STRING_cfT(M,I,A,B,D)
1940#define PSTRINGV_cfT(M,I,A,B,D) STRINGV_cfT(M,I,A,B,D)
1941#define CF_0_cfT(M,I,A,B,D)
1942
1943#define RCF(TN,I) _(TN,_cfSTR)(3,R,_(A,I),_(B,I),_(C,I),0,0)
1944#define DEFAULT_cfR(A,B,D)
1945#define LOGICAL_cfR(A,B,D)
1946#define PLOGICAL_cfR(A,B,D) *A=C2FLOGICAL(*A);
1947#define STRING_cfR(A,B,D) if (B) free(B);
1948#define STRINGV_cfR(A,B,D) free(B);
1949/* A and D as defined above for TSTRING(V) */
1950#define RRRRPSTR( A,B,D) if (B) memcpy(A,B, _cfMIN(strlen(B),D)), \
1951 (D>strlen(B)?memset(A+strlen(B),' ', D-strlen(B)):0), free(B);
1952#define RRRRPSTRV(A,B,D) c2fstrv(B,A,D+1,(D+1)*_(B,N)), free(B);
1953#ifdef vmsFortran
1954#define PSTRING_cfR(A,B,D) RRRRPSTR( A->dsc$a_pointer,B,A->dsc$w_length)
1955#define PSTRINGV_cfR(A,B,D) RRRRPSTRV(A->dsc$a_pointer,B,A->dsc$w_length)
1956#else
1957#ifdef CRAYFortran
1958#define PSTRING_cfR(A,B,D) RRRRPSTR( _fcdtocp(A),B,_fcdlen(A))
1959#define PSTRINGV_cfR(A,B,D) RRRRPSTRV(_fcdtocp(A),B,_fcdlen(A))
1960#else
1961#define PSTRING_cfR(A,B,D) RRRRPSTR( A,B,D)
1962#define PSTRINGV_cfR(A,B,D) RRRRPSTRV(A,B,D)
1963#endif
1964#endif
1965#define PNSTRING_cfR(A,B,D) PSTRING_cfR(A,B,D)
1966#define PPSTRING_cfR(A,B,D)
1967
1968#define BYTE_cfFZ(UN,LN) INTEGER_BYTE FCALLSC_QUALIFIER fcallsc(UN,LN)(
1969#define DOUBLE_cfFZ(UN,LN) DOUBLE_PRECISION FCALLSC_QUALIFIER fcallsc(UN,LN)(
1970#define INT_cfFZ(UN,LN) int FCALLSC_QUALIFIER fcallsc(UN,LN)(
1971#define LOGICAL_cfFZ(UN,LN) int FCALLSC_QUALIFIER fcallsc(UN,LN)(
1972#define LONG_cfFZ(UN,LN) long FCALLSC_QUALIFIER fcallsc(UN,LN)(
1973#define SHORT_cfFZ(UN,LN) short FCALLSC_QUALIFIER fcallsc(UN,LN)(
1974#define VOID_cfFZ(UN,LN) void FCALLSC_QUALIFIER fcallsc(UN,LN)(
1975#ifndef __CF__KnR
1976/* The void is req'd by the Apollo, to make this an ANSI function declaration.
1977 The Apollo promotes K&R float functions to double. */
1978#define FLOAT_cfFZ(UN,LN) FORTRAN_REAL FCALLSC_QUALIFIER fcallsc(UN,LN)(void
1979#ifdef vmsFortran
1980#define STRING_cfFZ(UN,LN) void FCALLSC_QUALIFIER fcallsc(UN,LN)(fstring *AS
1981#else
1982#ifdef CRAYFortran
1983#define STRING_cfFZ(UN,LN) void FCALLSC_QUALIFIER fcallsc(UN,LN)(_fcd AS
1984#else
1985#if defined(AbsoftUNIXFortran)
1986#define STRING_cfFZ(UN,LN) void FCALLSC_QUALIFIER fcallsc(UN,LN)(char *AS
1987#else
1988#define STRING_cfFZ(UN,LN) void FCALLSC_QUALIFIER fcallsc(UN,LN)(char *AS, unsigned D0
1989#endif
1990#endif
1991#endif
1992#else
1993#if ! (defined(FLOATFUNCTIONTYPE)&&defined(ASSIGNFLOAT)&&defined(RETURNFLOAT))
1994#define FLOAT_cfFZ(UN,LN) FORTRAN_REAL FCALLSC_QUALIFIER fcallsc(UN,LN)(
1995#else
1996#define FLOAT_cfFZ(UN,LN) FLOATFUNCTIONTYPE FCALLSC_QUALIFIER fcallsc(UN,LN)(
1997#endif
1998#if defined(vmsFortran) || defined(CRAYFortran) || defined(AbsoftUNIXFortran)
1999#define STRING_cfFZ(UN,LN) void FCALLSC_QUALIFIER fcallsc(UN,LN)(AS
2000#else
2001#define STRING_cfFZ(UN,LN) void FCALLSC_QUALIFIER fcallsc(UN,LN)(AS, D0
2002#endif
2003#endif
2004
2005#define BYTE_cfF(UN,LN) BYTE_cfFZ(UN,LN)
2006#define DOUBLE_cfF(UN,LN) DOUBLE_cfFZ(UN,LN)
2007#ifndef __CF_KnR
2008#define FLOAT_cfF(UN,LN) FORTRAN_REAL FCALLSC_QUALIFIER fcallsc(UN,LN)(
2009#else
2010#define FLOAT_cfF(UN,LN) FLOAT_cfFZ(UN,LN)
2011#endif
2012#define INT_cfF(UN,LN) INT_cfFZ(UN,LN)
2013#define LOGICAL_cfF(UN,LN) LOGICAL_cfFZ(UN,LN)
2014#define LONG_cfF(UN,LN) LONG_cfFZ(UN,LN)
2015#define SHORT_cfF(UN,LN) SHORT_cfFZ(UN,LN)
2016#define VOID_cfF(UN,LN) VOID_cfFZ(UN,LN)
2017#define STRING_cfF(UN,LN) STRING_cfFZ(UN,LN),
2018
2019#define INT_cfFF
2020#define VOID_cfFF
2021#ifdef vmsFortran
2022#define STRING_cfFF fstring *AS;
2023#else
2024#ifdef CRAYFortran
2025#define STRING_cfFF _fcd AS;
2026#else
2027#define STRING_cfFF char *AS; unsigned D0;
2028#endif
2029#endif
2030
2031#define INT_cfL A0=
2032#define STRING_cfL A0=
2033#define VOID_cfL
2034
2035#define INT_cfK
2036#define VOID_cfK
2037/* KSTRING copies the string into the position provided by the caller. */
2038#ifdef vmsFortran
2039#define STRING_cfK \
2040 memcpy(AS->dsc$a_pointer,A0,_cfMIN(AS->dsc$w_length,(A0==NULL?0:strlen(A0))));\
2041 AS->dsc$w_length>(A0==NULL?0:strlen(A0))? \
2042 memset(AS->dsc$a_pointer+(A0==NULL?0:strlen(A0)),' ', \
2043 AS->dsc$w_length-(A0==NULL?0:strlen(A0))):0;
2044#else
2045#ifdef CRAYFortran
2046#define STRING_cfK \
2047 memcpy(_fcdtocp(AS),A0, _cfMIN(_fcdlen(AS),(A0==NULL?0:strlen(A0))) ); \
2048 _fcdlen(AS)>(A0==NULL?0:strlen(A0))? \
2049 memset(_fcdtocp(AS)+(A0==NULL?0:strlen(A0)),' ', \
2050 _fcdlen(AS)-(A0==NULL?0:strlen(A0))):0;
2051#else
2052#define STRING_cfK memcpy(AS,A0, _cfMIN(D0,(A0==NULL?0:strlen(A0))) ); \
2053 D0>(A0==NULL?0:strlen(A0))?memset(AS+(A0==NULL?0:strlen(A0)), \
2054 ' ', D0-(A0==NULL?0:strlen(A0))):0;
2055#endif
2056#endif
2057
2058/* Note that K.. and I.. can't be combined since K.. has to access data before
2059R.., in order for functions returning strings which are also passed in as
2060arguments to work correctly. Note that R.. frees and hence may corrupt the
2061string. */
2062#define BYTE_cfI return A0;
2063#define DOUBLE_cfI return A0;
2064#if ! (defined(FLOATFUNCTIONTYPE)&&defined(ASSIGNFLOAT)&&defined(RETURNFLOAT))
2065#define FLOAT_cfI return A0;
2066#else
2067#define FLOAT_cfI RETURNFLOAT(A0);
2068#endif
2069#define INT_cfI return A0;
2070#ifdef hpuxFortran800
2071/* Incredibly, functions must return true as 1, elsewhere .true.==0x01000000. */
2072#define LOGICAL_cfI return ((A0)?1:0);
2073#else
2074#define LOGICAL_cfI return C2FLOGICAL(A0);
2075#endif
2076#define LONG_cfI return A0;
2077#define SHORT_cfI return A0;
2078#define STRING_cfI return ;
2079#define VOID_cfI return ;
2080
2081#ifdef OLD_VAXC /* Allow %CC-I-PARAMNOTUSED. */
2082#pragma standard
2083#endif
2084
2085#define FCALLSCSUB0( CN,UN,LN) FCALLSCFUN0(VOID,CN,UN,LN)
2086#define FCALLSCSUB1( CN,UN,LN,T1) FCALLSCFUN1(VOID,CN,UN,LN,T1)
2087#define FCALLSCSUB2( CN,UN,LN,T1,T2) FCALLSCFUN2(VOID,CN,UN,LN,T1,T2)
2088#define FCALLSCSUB3( CN,UN,LN,T1,T2,T3) FCALLSCFUN3(VOID,CN,UN,LN,T1,T2,T3)
2089#define FCALLSCSUB4( CN,UN,LN,T1,T2,T3,T4) \
2090 FCALLSCFUN4(VOID,CN,UN,LN,T1,T2,T3,T4)
2091#define FCALLSCSUB5( CN,UN,LN,T1,T2,T3,T4,T5) \
2092 FCALLSCFUN5(VOID,CN,UN,LN,T1,T2,T3,T4,T5)
2093#define FCALLSCSUB6( CN,UN,LN,T1,T2,T3,T4,T5,T6) \
2094 FCALLSCFUN6(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6)
2095#define FCALLSCSUB7( CN,UN,LN,T1,T2,T3,T4,T5,T6,T7) \
2096 FCALLSCFUN7(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7)
2097#define FCALLSCSUB8( CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8) \
2098 FCALLSCFUN8(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8)
2099#define FCALLSCSUB9( CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9) \
2100 FCALLSCFUN9(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9)
2101#define FCALLSCSUB10(CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA) \
2102 FCALLSCFUN10(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA)
2103#define FCALLSCSUB11(CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB) \
2104 FCALLSCFUN11(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB)
2105#define FCALLSCSUB12(CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC) \
2106 FCALLSCFUN12(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC)
2107#define FCALLSCSUB13(CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD) \
2108 FCALLSCFUN13(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD)
2109#define FCALLSCSUB14(CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
2110 FCALLSCFUN14(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)
2111
2112#define FCALLSCFUN1( T0,CN,UN,LN,T1) \
2113 FCALLSCFUN5 (T0,CN,UN,LN,T1,CF_0,CF_0,CF_0,CF_0)
2114#define FCALLSCFUN2( T0,CN,UN,LN,T1,T2) \
2115 FCALLSCFUN5 (T0,CN,UN,LN,T1,T2,CF_0,CF_0,CF_0)
2116#define FCALLSCFUN3( T0,CN,UN,LN,T1,T2,T3) \
2117 FCALLSCFUN5 (T0,CN,UN,LN,T1,T2,T3,CF_0,CF_0)
2118#define FCALLSCFUN4( T0,CN,UN,LN,T1,T2,T3,T4) \
2119 FCALLSCFUN5 (T0,CN,UN,LN,T1,T2,T3,T4,CF_0)
2120#define FCALLSCFUN5( T0,CN,UN,LN,T1,T2,T3,T4,T5) \
2121 FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0)
2122#define FCALLSCFUN6( T0,CN,UN,LN,T1,T2,T3,T4,T5,T6) \
2123 FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0)
2124#define FCALLSCFUN7( T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7) \
2125 FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0)
2126#define FCALLSCFUN8( T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8) \
2127 FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0)
2128#define FCALLSCFUN9( T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9) \
2129 FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0)
2130#define FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA) \
2131 FCALLSCFUN14(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0)
2132#define FCALLSCFUN11(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB) \
2133 FCALLSCFUN14(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0)
2134#define FCALLSCFUN12(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC) \
2135 FCALLSCFUN14(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0)
2136#define FCALLSCFUN13(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD) \
2137 FCALLSCFUN14(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0)
2138
2139#ifndef __CF__KnR
2140#define FCALLSCFUN0(T0,CN,UN,LN) CFextern _(T0,_cfFZ)(UN,LN) ABSOFT_cf2(T0)) \
2141 {_Icf(2,UU,T0,A0,0); _Icf(0,L,T0,0,0) CN(); _Icf(0,K,T0,0,0) _(T0,_cfI)}
2142
2143#define FCALLSCFUN14(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
2144 CFextern _(T0,_cfF)(UN,LN) \
2145 CFARGT14(NCF,DCF,ABSOFT_cf2(T0),T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)) \
2146 { CFARGT14S(QCF,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
2147 _Icf(2,UU,T0,A0,0); _Icf(0,L,T0,0,0) CN( TCF(LN,T1,1,0) TCF(LN,T2,2,1) \
2148 TCF(LN,T3,3,1) TCF(LN,T4,4,1) TCF(LN,T5,5,1) TCF(LN,T6,6,1) TCF(LN,T7,7,1) \
2149 TCF(LN,T8,8,1) TCF(LN,T9,9,1) TCF(LN,TA,A,1) TCF(LN,TB,B,1) TCF(LN,TC,C,1) \
2150 TCF(LN,TD,D,1) TCF(LN,TE,E,1) ); _Icf(0,K,T0,0,0) \
2151 CFARGT14S(RCF,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) _(T0,_cfI) }
2152#else
2153#define FCALLSCFUN0(T0,CN,UN,LN) CFextern _(T0,_cfFZ)(UN,LN) ABSOFT_cf3(T0)) _Icf(0,FF,T0,0,0)\
2154 {_Icf(2,UU,T0,A0,0); _Icf(0,L,T0,0,0) CN(); _Icf(0,K,T0,0,0) _(T0,_cfI)}
2155
2156#define FCALLSCFUN14(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
2157 CFextern _(T0,_cfF)(UN,LN) \
2158 CFARGT14(NNCF,DDCF,ABSOFT_cf3(T0),T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)) _Icf(0,FF,T0,0,0) \
2159 CFARGT14FS(NNNCF,DDDCF,_Z,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE); \
2160 { CFARGT14S(QCF,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) \
2161 _Icf(2,UU,T0,A0,0); _Icf(0,L,T0,0,0) CN( TCF(LN,T1,1,0) TCF(LN,T2,2,1) \
2162 TCF(LN,T3,3,1) TCF(LN,T4,4,1) TCF(LN,T5,5,1) TCF(LN,T6,6,1) TCF(LN,T7,7,1) \
2163 TCF(LN,T8,8,1) TCF(LN,T9,9,1) TCF(LN,TA,A,1) TCF(LN,TB,B,1) TCF(LN,TC,C,1) \
2164 TCF(LN,TD,D,1) TCF(LN,TE,E,1) ); _Icf(0,K,T0,0,0) \
2165 CFARGT14S(RCF,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) _(T0,_cfI)}
2166#endif
2167
2168
2169#endif /* __CFORTRAN_LOADED */

◆ ABSOFT_cf1

#define ABSOFT_cf1 (   T0)

Definition at line 875 of file cfortran.h.

◆ ABSOFT_cf2

#define ABSOFT_cf2 (   T0)

Definition at line 876 of file cfortran.h.

◆ ABSOFT_cf3

#define ABSOFT_cf3 (   T0)

Definition at line 877 of file cfortran.h.

◆ ACF

#define ACF (   NAME,
  TN,
  AI,
 
)    _(TN,_cfSTR)(4,A,NAME,I,AI,_(B,I),0)

Definition at line 677 of file cfortran.h.

◆ ACOLON

#define ACOLON   ;

Definition at line 301 of file cfortran.h.

◆ ACOMMA

#define ACOMMA   ,

Definition at line 300 of file cfortran.h.

◆ ANSI_C_preprocessor

#define ANSI_C_preprocessor   _cfleft_cfright

Definition at line 32 of file cfortran.h.

◆ APATRINGV_cfA

#define APATRINGV_cfA (   A,
  B,
  sA,
  filA,
  silA 
)     B.fs=c2fstrv(A,A,(B.flen=(silA)-1)+1,B.sizeofA=(sA));

Definition at line 692 of file cfortran.h.

◆ append_fcallsc

#define append_fcallsc (   P,
  p,
  UN,
  LN 
)    CFC_(_(UN,P),_(LN,p))

Definition at line 191 of file cfortran.h.

◆ BCF

#define BCF (   TN,
  AN,
  C 
)    _SEP_(TN,C,COMMA) _Icf(2,B,TN,AN,0)

Definition at line 1435 of file cfortran.h.

◆ BYTE_cfCCC

#define BYTE_cfCCC (   A,
  B 
)    &A

Definition at line 1594 of file cfortran.h.

◆ BYTE_cfE

#define BYTE_cfE   INTEGER_BYTE A0;

Definition at line 1365 of file cfortran.h.

◆ BYTE_cfF

#define BYTE_cfF (   UN,
  LN 
)    BYTE_cfFZ(UN,LN)

Definition at line 2005 of file cfortran.h.

◆ BYTE_cfFZ

#define BYTE_cfFZ (   UN,
  LN 
)    INTEGER_BYTE FCALLSC_QUALIFIER fcallsc(UN,LN)(

Definition at line 1968 of file cfortran.h.

◆ BYTE_cfI

#define BYTE_cfI   return A0;

Definition at line 2062 of file cfortran.h.

◆ BYTE_cfINT

#define BYTE_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLE_cfINT(N,A,B,X,Y,Z)

Definition at line 1239 of file cfortran.h.

◆ BYTE_cfPU

#define BYTE_cfPU (   A)    CFextern INTEGER_BYTE FCALLSC_QUALIFIER A

Definition at line 1351 of file cfortran.h.

◆ BYTE_cfSTR

#define BYTE_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1486 of file cfortran.h.

◆ BYTE_cfT

#define BYTE_cfT (   M,
  I,
  A,
  B,
 
)    *A

Definition at line 1841 of file cfortran.h.

◆ BYTE_cfVCF

#define BYTE_cfVCF (   A,
  B 
)

Definition at line 627 of file cfortran.h.

◆ BYTE_cfX

#define BYTE_cfX   return A0;

Definition at line 1652 of file cfortran.h.

◆ BYTEV_cfINT

#define BYTEV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEV_cfINT(N,A,B,X,Y,Z)

Definition at line 1253 of file cfortran.h.

◆ BYTEV_cfSTR

#define BYTEV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1493 of file cfortran.h.

◆ BYTEV_cfT

#define BYTEV_cfT (   M,
  I,
  A,
  B,
 
)    A

Definition at line 1848 of file cfortran.h.

◆ BYTEVV_cfINT

#define BYTEVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1254 of file cfortran.h.

◆ BYTEVV_cfSTR

#define BYTEVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1494 of file cfortran.h.

◆ BYTEVV_cfT

#define BYTEVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A /* We have to cast to void *, */

Definition at line 1855 of file cfortran.h.

◆ BYTEVVV_cfINT

#define BYTEVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1255 of file cfortran.h.

◆ BYTEVVV_cfSTR

#define BYTEVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1495 of file cfortran.h.

◆ BYTEVVV_cfT

#define BYTEVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A /* since we don't know the */

Definition at line 1856 of file cfortran.h.

◆ BYTEVVVV_cfINT

#define BYTEVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1256 of file cfortran.h.

◆ BYTEVVVV_cfSTR

#define BYTEVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1496 of file cfortran.h.

◆ BYTEVVVV_cfT

#define BYTEVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A /* dimensions of the array. */

Definition at line 1857 of file cfortran.h.

◆ BYTEVVVVV_cfINT

#define BYTEVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1257 of file cfortran.h.

◆ BYTEVVVVV_cfSTR

#define BYTEVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1497 of file cfortran.h.

◆ BYTEVVVVV_cfT

#define BYTEVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A /* i.e. Unfortunately, can't */

Definition at line 1858 of file cfortran.h.

◆ BYTEVVVVVV_cfINT

#define BYTEVVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1258 of file cfortran.h.

◆ BYTEVVVVVV_cfSTR

#define BYTEVVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1498 of file cfortran.h.

◆ BYTEVVVVVV_cfT

#define BYTEVVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A /* check that the type */

Definition at line 1859 of file cfortran.h.

◆ BYTEVVVVVVV_cfINT

#define BYTEVVVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1259 of file cfortran.h.

◆ BYTEVVVVVVV_cfPP

#define BYTEVVVVVVV_cfPP

Definition at line 1421 of file cfortran.h.

◆ BYTEVVVVVVV_cfSTR

#define BYTEVVVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1499 of file cfortran.h.

◆ BYTEVVVVVVV_cfT

#define BYTEVVVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A /* matches the prototype. */

Definition at line 1860 of file cfortran.h.

◆ BYTEVVVVVVV_cfTYPE

#define BYTEVVVVVVV_cfTYPE   INTEGER_BYTE

Definition at line 1215 of file cfortran.h.

◆ C2FCBSTR

#define C2FCBSTR (   CSTR,
  FSTR,
  DIM 
)
Value:
c2fstrv((char *)CSTR, (char *)FSTR, sizeof(FSTR)/cfelementsof(FSTR,DIM)+1, \
static char * c2fstrv(char *cstr, char *fstr, int elem_len, int sizeofcstr)
Definition cfortran.h:398
#define cfelementsof(A, D)
Definition cfortran.h:588
TH1X EXPRT * h1_book(const char *name, const char *title, int bins, double min, double max)
Definition rmidas.h:24

Definition at line 570 of file cfortran.h.

◆ C2FLOGICAL

#define C2FLOGICAL (   L)    (L)

Definition at line 357 of file cfortran.h.

◆ C2FLOGICALV [1/2]

#define C2FLOGICALV (   A,
 
)     do {int __i; for(__i=0;__i<I;__i++) A[__i]=C2FLOGICAL(A[__i]); } while (FALSE)

Definition at line 336 of file cfortran.h.

337 {int __i; for(__i=0;__i<I;__i++) A[__i]=C2FLOGICAL(A[__i]); } while (FALSE)
#define FALSE
Definition cfortran.h:309
#define C2FLOGICAL(L)
Definition cfortran.h:357
Definition test_init.cxx:9

◆ C2FLOGICALV [2/2]

#define C2FLOGICALV (   A,
 
)

Definition at line 336 of file cfortran.h.

337 {int __i; for(__i=0;__i<I;__i++) A[__i]=C2FLOGICAL(A[__i]); } while (FALSE)

◆ C_FUNCTION

#define C_FUNCTION (   UN,
  LN 
)    fcallsc(UN,LN)

Definition at line 193 of file cfortran.h.

◆ CCALLSFFUN0

#define CCALLSFFUN0 (   UN,
  LN 
)    CFFUN(UN)()

Definition at line 1675 of file cfortran.h.

◆ CCALLSFFUN1

#define CCALLSFFUN1 (   UN,
  LN,
  T1,
  A1 
)     CCALLSFFUN5 (UN,LN,T1,CF_0,CF_0,CF_0,CF_0,A1,0,0,0,0)

Definition at line 1681 of file cfortran.h.

◆ CCALLSFFUN10

#define CCALLSFFUN10 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA 
)     CCALLSFFUN14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,0,0,0,0)

Definition at line 1699 of file cfortran.h.

◆ CCALLSFFUN11

#define CCALLSFFUN11 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB 
)     CCALLSFFUN14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,0,0,0)

Definition at line 1701 of file cfortran.h.

◆ CCALLSFFUN12

#define CCALLSFFUN12 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB,
  AC 
)     CCALLSFFUN14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,0,0)

Definition at line 1703 of file cfortran.h.

◆ CCALLSFFUN13

#define CCALLSFFUN13 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB,
  AC,
  AD 
)     CCALLSFFUN14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,0)

Definition at line 1705 of file cfortran.h.

◆ CCALLSFFUN14

#define CCALLSFFUN14 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB,
  AC,
  AD,
  AE 
)
Value:
((CFFUN(UN)( BCF(T1,A1,0) BCF(T2,A2,1) BCF(T3,A3,1) BCF(T4,A4,1) BCF(T5,A5,1) \
BCF(T6,A6,1) BCF(T7,A7,1) BCF(T8,A8,1) BCF(T9,A9,1) BCF(TA,AA,1) \
BCF(TB,AB,1) BCF(TC,AC,1) BCF(TD,AD,1) BCF(TE,AE,1) \
SCF(T1,LN,1,A1) SCF(T2,LN,2,A2) SCF(T3,LN,3,A3) SCF(T4,LN,4,A4) \
SCF(T5,LN,5,A5) SCF(T6,LN,6,A6) SCF(T7,LN,7,A7) SCF(T8,LN,8,A8) \
SCF(T9,LN,9,A9) SCF(TA,LN,A,AA) SCF(TB,LN,B,AB) SCF(TC,LN,C,AC) \
SCF(TD,LN,D,AD))))
#define SCF(TN, NAME, I, A)
Definition cfortran.h:1454
#define CFFUN(NAME)
Definition cfortran.h:1672
#define BCF(TN, AN, C)
Definition cfortran.h:1435

Definition at line 1708 of file cfortran.h.

◆ CCALLSFFUN2

#define CCALLSFFUN2 (   UN,
  LN,
  T1,
  T2,
  A1,
  A2 
)     CCALLSFFUN5 (UN,LN,T1,T2,CF_0,CF_0,CF_0,A1,A2,0,0,0)

Definition at line 1683 of file cfortran.h.

◆ CCALLSFFUN3

#define CCALLSFFUN3 (   UN,
  LN,
  T1,
  T2,
  T3,
  A1,
  A2,
  A3 
)     CCALLSFFUN5 (UN,LN,T1,T2,T3,CF_0,CF_0,A1,A2,A3,0,0)

Definition at line 1685 of file cfortran.h.

◆ CCALLSFFUN4

#define CCALLSFFUN4 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  A1,
  A2,
  A3,
  A4 
)     CCALLSFFUN5 (UN,LN,T1,T2,T3,T4,CF_0,A1,A2,A3,A4,0)

Definition at line 1687 of file cfortran.h.

◆ CCALLSFFUN5

#define CCALLSFFUN5 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  A1,
  A2,
  A3,
  A4,
  A5 
)     CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,0,0,0,0,0)

Definition at line 1689 of file cfortran.h.

◆ CCALLSFFUN6

#define CCALLSFFUN6 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6 
)     CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,0,0,0,0)

Definition at line 1691 of file cfortran.h.

◆ CCALLSFFUN7

#define CCALLSFFUN7 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7 
)     CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,0,0,0)

Definition at line 1693 of file cfortran.h.

◆ CCALLSFFUN8

#define CCALLSFFUN8 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8 
)     CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,0,0)

Definition at line 1695 of file cfortran.h.

◆ CCALLSFFUN9

#define CCALLSFFUN9 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9 
)     CCALLSFFUN10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,0)

Definition at line 1697 of file cfortran.h.

◆ CCALLSFSUB0

#define CCALLSFSUB0 (   UN,
  LN 
)    do{CPPPROTOCLSFSUB0(UN,LN) CFC_(UN,LN)();}while(FALSE)

Definition at line 1101 of file cfortran.h.

◆ CCALLSFSUB1

#define CCALLSFSUB1 (   UN,
  LN,
  T1,
  A1 
)     CCALLSFSUB5 (UN,LN,T1,CF_0,CF_0,CF_0,CF_0,A1,0,0,0,0)

Definition at line 1055 of file cfortran.h.

◆ CCALLSFSUB10

#define CCALLSFSUB10 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA 
)     CCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,0,0,0,0)

Definition at line 1073 of file cfortran.h.

◆ CCALLSFSUB11

#define CCALLSFSUB11 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB 
)     CCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,0,0,0)

Definition at line 1075 of file cfortran.h.

◆ CCALLSFSUB12

#define CCALLSFSUB12 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB,
  AC 
)     CCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,0,0)

Definition at line 1077 of file cfortran.h.

◆ CCALLSFSUB13

#define CCALLSFSUB13 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB,
  AC,
  AD 
)     CCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,0)

Definition at line 1079 of file cfortran.h.

◆ CCALLSFSUB14

#define CCALLSFSUB14 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB,
  AC,
  AD,
  AE 
)
Value:
ACF(LN,T1,A1,1) ACF(LN,T2,A2,2) ACF(LN,T3,A3,3) \
ACF(LN,T4,A4,4) ACF(LN,T5,A5,5) ACF(LN,T6,A6,6) ACF(LN,T7,A7,7) \
ACF(LN,T8,A8,8) ACF(LN,T9,A9,9) ACF(LN,TA,AA,A) ACF(LN,TB,AB,B) \
ACF(LN,TC,AC,C) ACF(LN,TD,AD,D) ACF(LN,TE,AE,E) \
WCF(T1,A1,1) WCF(T2,A2,2) WCF(T3,A3,3) WCF(T4,A4,4) WCF(T5,A5,5) \
WCF(T6,A6,6) WCF(T7,A7,7) WCF(T8,A8,8) WCF(T9,A9,9) WCF(TA,AA,A) \
#define CFC_(UN, LN)
Definition cfortran.h:183
#define WCF(TN, AN, I)
Definition cfortran.h:781
#define JCF(TN, I)
Definition cfortran.h:749
#define CFARGTA14(F, S, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC, AD, AE)
Definition cfortran.h:919
#define VVCF(TN, AI, BI)
Definition cfortran.h:640
#define AACF(TN, AI, I, C)
Definition cfortran.h:714
#define ACF(NAME, TN, AI, I)
Definition cfortran.h:677

Definition at line 1102 of file cfortran.h.

1107 ACF(LN,T1,A1,1) ACF(LN,T2,A2,2) ACF(LN,T3,A3,3) \
1108 ACF(LN,T4,A4,4) ACF(LN,T5,A5,5) ACF(LN,T6,A6,6) ACF(LN,T7,A7,7) \
1109 ACF(LN,T8,A8,8) ACF(LN,T9,A9,9) ACF(LN,TA,AA,A) ACF(LN,TB,AB,B) \
1110 ACF(LN,TC,AC,C) ACF(LN,TD,AD,D) ACF(LN,TE,AE,E) \
1112 WCF(T1,A1,1) WCF(T2,A2,2) WCF(T3,A3,3) WCF(T4,A4,4) WCF(T5,A5,5) \
1113 WCF(T6,A6,6) WCF(T7,A7,7) WCF(T8,A8,8) WCF(T9,A9,9) WCF(TA,AA,A) \
1114 WCF(TB,AB,B) WCF(TC,AC,C) WCF(TD,AD,D) WCF(TE,AE,E) }while(FALSE)

◆ CCALLSFSUB15

#define CCALLSFSUB15 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB,
  AC,
  AD,
  AE,
  AF 
)     CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,CF_0,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,0,0,0,0,0)

Definition at line 1119 of file cfortran.h.

◆ CCALLSFSUB16

#define CCALLSFSUB16 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF,
  TG,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB,
  AC,
  AD,
  AE,
  AF,
  AG 
)     CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,0,0,0,0)

Definition at line 1121 of file cfortran.h.

◆ CCALLSFSUB17

#define CCALLSFSUB17 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF,
  TG,
  TH,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB,
  AC,
  AD,
  AE,
  AF,
  AG,
  AH 
)     CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,0,0,0)

Definition at line 1123 of file cfortran.h.

◆ CCALLSFSUB18

#define CCALLSFSUB18 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF,
  TG,
  TH,
  TI,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB,
  AC,
  AD,
  AE,
  AF,
  AG,
  AH,
  AI 
)     CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,AI,0,0)

Definition at line 1125 of file cfortran.h.

◆ CCALLSFSUB19

#define CCALLSFSUB19 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF,
  TG,
  TH,
  TI,
  TJ,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB,
  AC,
  AD,
  AE,
  AF,
  AG,
  AH,
  AI,
  AJ 
)     CCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,0)

Definition at line 1127 of file cfortran.h.

◆ CCALLSFSUB2

#define CCALLSFSUB2 (   UN,
  LN,
  T1,
  T2,
  A1,
  A2 
)     CCALLSFSUB5 (UN,LN,T1,T2,CF_0,CF_0,CF_0,A1,A2,0,0,0)

Definition at line 1057 of file cfortran.h.

◆ CCALLSFSUB20

#define CCALLSFSUB20 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF,
  TG,
  TH,
  TI,
  TJ,
  TK,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB,
  AC,
  AD,
  AE,
  AF,
  AG,
  AH,
  AI,
  AJ,
  AK 
)
Value:
ACF(LN,T1,A1,1) ACF(LN,T2,A2,2) ACF(LN,T3,A3,3) ACF(LN,T4,A4,4) \
ACF(LN,T5,A5,5) ACF(LN,T6,A6,6) ACF(LN,T7,A7,7) ACF(LN,T8,A8,8) \
ACF(LN,T9,A9,9) ACF(LN,TA,AA,A) ACF(LN,TB,AB,B) ACF(LN,TC,AC,C) \
ACF(LN,TD,AD,D) ACF(LN,TE,AE,E) ACF(LN,TF,AF,F) ACF(LN,TG,AG,G) \
ACF(LN,TH,AH,H) ACF(LN,TI,AI,I) ACF(LN,TJ,AJ,J) ACF(LN,TK,AK,K) \
WCF(T1,A1,1) WCF(T2,A2,2) WCF(T3,A3,3) WCF(T4,A4,4) WCF(T5,A5,5) WCF(T6,A6,6) \
WCF(T7,A7,7) WCF(T8,A8,8) WCF(T9,A9,9) WCF(TA,AA,A) WCF(TB,AB,B) WCF(TC,AC,C) \
WCF(TD,AD,D) WCF(TE,AE,E) WCF(TF,AF,F) WCF(TG,AG,G) WCF(TH,AH,H) WCF(TI,AI,I) \
#define CFARGTA20(Z, S, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE, TF, TG, TH, TI, TJ, TK, A1, A2, A3, A4, A5, A6, A7, A8, A9, AA, AB, AC, AD, AE, AF, AG, AH, AI, AJ, AK)
Definition cfortran.h:927
static const uint32_t K[]
Definition sha256.cxx:136

Definition at line 1136 of file cfortran.h.

1143 ACF(LN,T1,A1,1) ACF(LN,T2,A2,2) ACF(LN,T3,A3,3) ACF(LN,T4,A4,4) \
1144 ACF(LN,T5,A5,5) ACF(LN,T6,A6,6) ACF(LN,T7,A7,7) ACF(LN,T8,A8,8) \
1145 ACF(LN,T9,A9,9) ACF(LN,TA,AA,A) ACF(LN,TB,AB,B) ACF(LN,TC,AC,C) \
1146 ACF(LN,TD,AD,D) ACF(LN,TE,AE,E) ACF(LN,TF,AF,F) ACF(LN,TG,AG,G) \
1147 ACF(LN,TH,AH,H) ACF(LN,TI,AI,I) ACF(LN,TJ,AJ,J) ACF(LN,TK,AK,K) \
1149 WCF(T1,A1,1) WCF(T2,A2,2) WCF(T3,A3,3) WCF(T4,A4,4) WCF(T5,A5,5) WCF(T6,A6,6) \
1150 WCF(T7,A7,7) WCF(T8,A8,8) WCF(T9,A9,9) WCF(TA,AA,A) WCF(TB,AB,B) WCF(TC,AC,C) \
1151 WCF(TD,AD,D) WCF(TE,AE,E) WCF(TF,AF,F) WCF(TG,AG,G) WCF(TH,AH,H) WCF(TI,AI,I) \
1152 WCF(TJ,AJ,J) WCF(TK,AK,K) }while(FALSE)

◆ CCALLSFSUB3

#define CCALLSFSUB3 (   UN,
  LN,
  T1,
  T2,
  T3,
  A1,
  A2,
  A3 
)     CCALLSFSUB5 (UN,LN,T1,T2,T3,CF_0,CF_0,A1,A2,A3,0,0)

Definition at line 1059 of file cfortran.h.

◆ CCALLSFSUB4

#define CCALLSFSUB4 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  A1,
  A2,
  A3,
  A4 
)     CCALLSFSUB5 (UN,LN,T1,T2,T3,T4,CF_0,A1,A2,A3,A4,0)

Definition at line 1061 of file cfortran.h.

◆ CCALLSFSUB5

#define CCALLSFSUB5 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  A1,
  A2,
  A3,
  A4,
  A5 
)     CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,0,0,0,0,0)

Definition at line 1063 of file cfortran.h.

◆ CCALLSFSUB6

#define CCALLSFSUB6 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6 
)     CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,0,0,0,0)

Definition at line 1065 of file cfortran.h.

◆ CCALLSFSUB7

#define CCALLSFSUB7 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7 
)     CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,0,0,0)

Definition at line 1067 of file cfortran.h.

◆ CCALLSFSUB8

#define CCALLSFSUB8 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8 
)     CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,0,0)

Definition at line 1069 of file cfortran.h.

◆ CCALLSFSUB9

#define CCALLSFSUB9 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9 
)     CCALLSFSUB10(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0,A1,A2,A3,A4,A5,A6,A7,A8,A9,0)

Definition at line 1071 of file cfortran.h.

◆ CCCF

#define CCCF (   TN,
  I,
  M 
)    _SEP_(TN,M,COMMA) _Icf(3,CC,TN,_(A,I),_(B,I))

Definition at line 1614 of file cfortran.h.

◆ CCF

#define CCF (   NAME,
  TN,
 
)    _(TN,_cfSTR)(5,C,NAME,I,_(A,I),_(B,I),_(C,I))

Definition at line 1563 of file cfortran.h.

◆ CF_0_cfINT

#define CF_0_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)

Definition at line 1320 of file cfortran.h.

◆ CF_0_cfSTR

#define CF_0_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)

Definition at line 1560 of file cfortran.h.

◆ CF_0_cfT

#define CF_0_cfT (   M,
  I,
  A,
  B,
 
)

Definition at line 1941 of file cfortran.h.

◆ CF_DECLARE_GETARG

#define CF_DECLARE_GETARG

Definition at line 292 of file cfortran.h.

◆ CF_NULL_PROTO

#define CF_NULL_PROTO

Definition at line 269 of file cfortran.h.

◆ CF_SAME_NAMESPACE

#define CF_SAME_NAMESPACE

Definition at line 176 of file cfortran.h.

◆ CF_SET_GETARG

#define CF_SET_GETARG (   ARGC,
  ARGV 
)

Definition at line 293 of file cfortran.h.

◆ CFARGS0

#define CFARGS0 (   A,
  T,
  V,
  W,
  X,
  Y,
  Z 
)    _3(T,_cf,A)

Definition at line 1230 of file cfortran.h.

◆ CFARGS1

#define CFARGS1 (   A,
  T,
  V,
  W,
  X,
  Y,
  Z 
)    _3(T,_cf,A)(V)

Definition at line 1231 of file cfortran.h.

◆ CFARGS2

#define CFARGS2 (   A,
  T,
  V,
  W,
  X,
  Y,
  Z 
)    _3(T,_cf,A)(V,W)

Definition at line 1232 of file cfortran.h.

◆ CFARGS3

#define CFARGS3 (   A,
  T,
  V,
  W,
  X,
  Y,
  Z 
)    _3(T,_cf,A)(V,W,X)

Definition at line 1233 of file cfortran.h.

◆ CFARGS4

#define CFARGS4 (   A,
  T,
  V,
  W,
  X,
  Y,
  Z 
)    _3(T,_cf,A)(V,W,X,Y)

Definition at line 1234 of file cfortran.h.

◆ CFARGS5

#define CFARGS5 (   A,
  T,
  V,
  W,
  X,
  Y,
  Z 
)    _3(T,_cf,A)(V,W,X,Y,Z)

Definition at line 1235 of file cfortran.h.

◆ CFARGT14

#define CFARGT14 (   F,
  S,
  M,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE 
)
Value:
F(T1,1,0) F(T2,2,1) F(T3,3,1) F(T4,4,1) F(T5,5,1) F(T6,6,1) F(T7,7,1) \
F(T8,8,1) F(T9,9,1) F(TA,A,1) F(TB,B,1) F(TC,C,1) F(TD,D,1) F(TE,E,1) \
#define CFARGT14S(S, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE)
Definition cfortran.h:885
#define S(x)
#define M(e)
Definition tinyexpr.c:581

Definition at line 907 of file cfortran.h.

◆ CFARGT14FS

#define CFARGT14FS (   F,
  S,
  M,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE 
)
Value:
F(T1,1,0) F(T2,2,1) F(T3,3,1) F(T4,4,1) F(T5,5,1) F(T6,6,1) F(T7,7,1) \
F(T8,8,1) F(T9,9,1) F(TA,A,1) F(TB,B,1) F(TC,C,1) F(TD,D,1) F(TE,E,1) \

Definition at line 888 of file cfortran.h.

◆ CFARGT14S

#define CFARGT14S (   S,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE 
)
Value:
S(T1,1) S(T2,2) S(T3,3) S(T4,4) S(T5,5) S(T6,6) S(T7,7) \
S(T8,8) S(T9,9) S(TA,A) S(TB,B) S(TC,C) S(TD,D) S(TE,E)

Definition at line 885 of file cfortran.h.

◆ CFARGT20

#define CFARGT20 (   Z,
  S,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF,
  TG,
  TH,
  TI,
  TJ,
  TK 
)
Value:
Z(T1,1,0) Z(T2,2,1) Z(T3,3,1) Z(T4,4,1) Z(T5,5,1) Z(T6,6,1) Z(T7,7,1) \
Z(T8,8,1) Z(T9,9,1) Z(TA,A,1) Z(TB,B,1) Z(TC,C,1) Z(TD,D,1) Z(TE,E,1) \
Z(TF,F,1) Z(TG,G,1) Z(TH,H,1) Z(TI,I,1) Z(TJ,J,1) Z(TK,K,1) \
S(T1,1) S(T2,2) S(T3,3) S(T4,4) S(T5,5) S(T6,6) S(T7,7) \
S(T8,8) S(T9,9) S(TA,A) S(TB,B) S(TC,C) S(TD,D) S(TE,E) \
S(TF,F) S(TG,G) S(TH,H) S(TI,I) S(TJ,J) S(TK,K)

Definition at line 912 of file cfortran.h.

◆ CFARGTA14

#define CFARGTA14 (   F,
  S,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB,
  AC,
  AD,
  AE 
)
Value:
F(T1,A1,1,0) F(T2,A2,2,1) F(T3,A3,3,1) F(T4,A4,4,1) F(T5,A5,5,1) F(T6,A6,6,1) \
F(T7,A7,7,1) F(T8,A8,8,1) F(T9,A9,9,1) F(TA,AA,A,1) F(TB,AB,B,1) F(TC,AC,C,1) \
F(TD,AD,D,1) F(TE,AE,E,1) S(T1,1) S(T2,2) S(T3,3) S(T4,4) \
S(T5,5) S(T6,6) S(T7,7) S(T8,8) S(T9,9) S(TA,A) \
S(TB,B) S(TC,C) S(TD,D) S(TE,E)

Definition at line 919 of file cfortran.h.

◆ CFARGTA20

#define CFARGTA20 (   Z,
  S,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF,
  TG,
  TH,
  TI,
  TJ,
  TK,
  A1,
  A2,
  A3,
  A4,
  A5,
  A6,
  A7,
  A8,
  A9,
  AA,
  AB,
  AC,
  AD,
  AE,
  AF,
  AG,
  AH,
  AI,
  AJ,
  AK 
)
Value:
Z(T1,A1,1,0) Z(T2,A2,2,1) Z(T3,A3,3,1) Z(T4,A4,4,1) Z(T5,A5,5,1) Z(T6,A6,6,1) \
Z(T7,A7,7,1) Z(T8,A8,8,1) Z(T9,A9,9,1) Z(TA,AA,A,1) Z(TB,AB,B,1) Z(TC,AC,C,1) \
Z(TD,AD,D,1) Z(TE,AE,E,1) Z(TF,AF,F,1) Z(TG,AG,G,1) Z(TH,AH,H,1) Z(TI,AI,I,1) \
Z(TJ,AJ,J,1) Z(TK,AK,K,1) S(T1,1) S(T2,2) S(T3,3) S(T4,4) \
S(T5,5) S(T6,6) S(T7,7) S(T8,8) S(T9,9) S(TA,A) \
S(TB,B) S(TC,C) S(TD,D) S(TE,E) S(TF,F) S(TG,G) \
S(TH,H) S(TI,I) S(TJ,J) S(TK,K)

Definition at line 927 of file cfortran.h.

◆ CFC_

#define CFC_ (   UN,
  LN 
)    LN /* Lowercase FORTRAN symbols. */

Definition at line 183 of file cfortran.h.

◆ cfDEREFERENCE0

#define cfDEREFERENCE0

Definition at line 582 of file cfortran.h.

◆ cfDEREFERENCE1

#define cfDEREFERENCE1   *

Definition at line 583 of file cfortran.h.

◆ cfDEREFERENCE2

#define cfDEREFERENCE2   **

Definition at line 584 of file cfortran.h.

◆ cfDEREFERENCE3

#define cfDEREFERENCE3   ***

Definition at line 585 of file cfortran.h.

◆ cfDEREFERENCE4

#define cfDEREFERENCE4   ****

Definition at line 586 of file cfortran.h.

◆ cfDEREFERENCE5

#define cfDEREFERENCE5   *****

Definition at line 587 of file cfortran.h.

◆ cfelementsof

#define cfelementsof (   A,
 
)    (sizeof(A)/sizeof(_(cfDEREFERENCE,D)(A)))

Definition at line 588 of file cfortran.h.

◆ CFextern

#define CFextern   extern

Definition at line 1020 of file cfortran.h.

◆ CFFUN

#define CFFUN (   NAME)    _(__cf__,NAME)

Definition at line 1672 of file cfortran.h.

◆ CFORTRAN_NON_CHAR

#define CFORTRAN_NON_CHAR   0x7F

Definition at line 1175 of file cfortran.h.

◆ COMMON_BLOCK

#define COMMON_BLOCK (   UN,
  LN 
)    CFC_(UN,LN)

Definition at line 200 of file cfortran.h.

◆ COMMON_BLOCK_DEF

#define COMMON_BLOCK_DEF (   DEFINITION,
  NAME 
)    extern DEFINITION NAME

Definition at line 268 of file cfortran.h.

◆ CPPPROTOCLSFSUB0

#define CPPPROTOCLSFSUB0 (   UN,
  LN 
)     PROTOCCALLSFSUB0(UN,LN)

Definition at line 1087 of file cfortran.h.

◆ CPPPROTOCLSFSUB14

#define CPPPROTOCLSFSUB14 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE 
)     PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)

Definition at line 1089 of file cfortran.h.

◆ CPPPROTOCLSFSUB20

#define CPPPROTOCLSFSUB20 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF,
  TG,
  TH,
  TI,
  TJ,
  TK 
)     PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK)

Definition at line 1091 of file cfortran.h.

◆ DCF

#define DCF (   TN,
 
)    HCF(TN,I)

Definition at line 1803 of file cfortran.h.

◆ DDCF

#define DDCF (   TN,
 
)    HHCF(TN,I)

Definition at line 1804 of file cfortran.h.

◆ DDDCF

#define DDDCF (   TN,
 
)    HHHCF(TN,I)

Definition at line 1805 of file cfortran.h.

◆ DEFAULT_cfA

#define DEFAULT_cfA (   M,
  I,
  A,
  B 
)

Definition at line 678 of file cfortran.h.

◆ DEFAULT_cfC

#define DEFAULT_cfC (   M,
  I,
  A,
  B,
  C 
)

Definition at line 1564 of file cfortran.h.

◆ DEFAULT_cfH

#define DEFAULT_cfH (   M,
  I,
  A 
)

Definition at line 1471 of file cfortran.h.

◆ DEFAULT_cfJ

#define DEFAULT_cfJ (   B)

Definition at line 753 of file cfortran.h.

◆ DEFAULT_cfKK

#define DEFAULT_cfKK (   B)

Definition at line 769 of file cfortran.h.

◆ DEFAULT_cfQ

#define DEFAULT_cfQ (   B)

Definition at line 1809 of file cfortran.h.

◆ DEFAULT_cfR

#define DEFAULT_cfR (   A,
  B,
 
)

Definition at line 1944 of file cfortran.h.

◆ DEFAULT_cfS

#define DEFAULT_cfS (   M,
  I,
  A 
)

Definition at line 1455 of file cfortran.h.

◆ DEFAULT_cfW

#define DEFAULT_cfW (   A,
  B 
)

Definition at line 782 of file cfortran.h.

◆ DOUBLE_cfCCC

#define DOUBLE_cfCCC (   A,
  B 
)    &A

Definition at line 1595 of file cfortran.h.

◆ DOUBLE_cfE

#define DOUBLE_cfE   DOUBLE_PRECISION A0;

Definition at line 1366 of file cfortran.h.

◆ DOUBLE_cfF

#define DOUBLE_cfF (   UN,
  LN 
)    DOUBLE_cfFZ(UN,LN)

Definition at line 2006 of file cfortran.h.

◆ DOUBLE_cfFZ

#define DOUBLE_cfFZ (   UN,
  LN 
)    DOUBLE_PRECISION FCALLSC_QUALIFIER fcallsc(UN,LN)(

Definition at line 1969 of file cfortran.h.

◆ DOUBLE_cfI

#define DOUBLE_cfI   return A0;

Definition at line 2063 of file cfortran.h.

◆ DOUBLE_cfINT

#define DOUBLE_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    _(CFARGS,N)(A,INT,B,X,Y,Z,0)

Definition at line 1240 of file cfortran.h.

◆ DOUBLE_cfPU

Definition at line 1352 of file cfortran.h.

◆ DOUBLE_cfSTR

#define DOUBLE_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1487 of file cfortran.h.

◆ DOUBLE_cfT

#define DOUBLE_cfT (   M,
  I,
  A,
  B,
 
)    *A

Definition at line 1842 of file cfortran.h.

◆ DOUBLE_cfVCF

#define DOUBLE_cfVCF (   A,
  B 
)

Definition at line 628 of file cfortran.h.

◆ DOUBLE_cfX

#define DOUBLE_cfX   return A0;

Definition at line 1653 of file cfortran.h.

◆ DOUBLE_PRECISION

#define DOUBLE_PRECISION   double

Definition at line 216 of file cfortran.h.

◆ DOUBLEV_cfINT

#define DOUBLEV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    _(CFARGS,N)(A,INTV,B,X,Y,Z,0)

Definition at line 1260 of file cfortran.h.

◆ DOUBLEV_cfSTR

#define DOUBLEV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1500 of file cfortran.h.

◆ DOUBLEV_cfT

#define DOUBLEV_cfT (   M,
  I,
  A,
  B,
 
)    A

Definition at line 1849 of file cfortran.h.

◆ DOUBLEVV_cfINT

#define DOUBLEVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    _(CFARGS,N)(A,INTVV,B,X,Y,Z,0)

Definition at line 1261 of file cfortran.h.

◆ DOUBLEVV_cfSTR

#define DOUBLEVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1501 of file cfortran.h.

◆ DOUBLEVV_cfT

#define DOUBLEVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1861 of file cfortran.h.

◆ DOUBLEVVV_cfINT

#define DOUBLEVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    _(CFARGS,N)(A,INTVVV,B,X,Y,Z,0)

Definition at line 1262 of file cfortran.h.

◆ DOUBLEVVV_cfSTR

#define DOUBLEVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1502 of file cfortran.h.

◆ DOUBLEVVV_cfT

#define DOUBLEVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1862 of file cfortran.h.

◆ DOUBLEVVVV_cfINT

#define DOUBLEVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    _(CFARGS,N)(A,INTVVVV,B,X,Y,Z,0)

Definition at line 1263 of file cfortran.h.

◆ DOUBLEVVVV_cfSTR

#define DOUBLEVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1503 of file cfortran.h.

◆ DOUBLEVVVV_cfT

#define DOUBLEVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1863 of file cfortran.h.

◆ DOUBLEVVVVV_cfINT

#define DOUBLEVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    _(CFARGS,N)(A,INTVVVVV,B,X,Y,Z,0)

Definition at line 1264 of file cfortran.h.

◆ DOUBLEVVVVV_cfSTR

#define DOUBLEVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1504 of file cfortran.h.

◆ DOUBLEVVVVV_cfT

#define DOUBLEVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1864 of file cfortran.h.

◆ DOUBLEVVVVVV_cfINT

#define DOUBLEVVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    _(CFARGS,N)(A,INTVVVVVV,B,X,Y,Z,0)

Definition at line 1265 of file cfortran.h.

◆ DOUBLEVVVVVV_cfSTR

#define DOUBLEVVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1505 of file cfortran.h.

◆ DOUBLEVVVVVV_cfT

#define DOUBLEVVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1865 of file cfortran.h.

◆ DOUBLEVVVVVVV_cfINT

#define DOUBLEVVVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    _(CFARGS,N)(A,INTVVVVVVV,B,X,Y,Z,0)

Definition at line 1266 of file cfortran.h.

◆ DOUBLEVVVVVVV_cfPP

#define DOUBLEVVVVVVV_cfPP

Definition at line 1423 of file cfortran.h.

◆ DOUBLEVVVVVVV_cfSTR

#define DOUBLEVVVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1506 of file cfortran.h.

◆ DOUBLEVVVVVVV_cfT

#define DOUBLEVVVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1866 of file cfortran.h.

◆ DOUBLEVVVVVVV_cfTYPE

#define DOUBLEVVVVVVV_cfTYPE   DOUBLE_PRECISION

Definition at line 1216 of file cfortran.h.

◆ F2CLOGICAL

#define F2CLOGICAL (   L)    (L)

Definition at line 358 of file cfortran.h.

◆ F2CLOGICALV [1/2]

#define F2CLOGICALV (   A,
 
)     do {int __i; for(__i=0;__i<I;__i++) A[__i]=F2CLOGICAL(A[__i]); } while (FALSE)

Definition at line 338 of file cfortran.h.

339 {int __i; for(__i=0;__i<I;__i++) A[__i]=F2CLOGICAL(A[__i]); } while (FALSE)
#define F2CLOGICAL(L)
Definition cfortran.h:358

◆ F2CLOGICALV [2/2]

#define F2CLOGICALV (   A,
 
)

Definition at line 338 of file cfortran.h.

339 {int __i; for(__i=0;__i<I;__i++) A[__i]=F2CLOGICAL(A[__i]); } while (FALSE)

◆ FALSE

#define FALSE   (1==0)

Definition at line 309 of file cfortran.h.

◆ fcallsc

#define fcallsc (   UN,
  LN 
)    orig_fcallsc(UN,LN)

Definition at line 189 of file cfortran.h.

◆ FCALLSC_QUALIFIER

#define FCALLSC_QUALIFIER

Definition at line 1013 of file cfortran.h.

◆ FCALLSCFUN0

#define FCALLSCFUN0 (   T0,
  CN,
  UN,
  LN 
)
Value:
{_Icf(2,UU,T0,A0,0); _Icf(0,L,T0,0,0) CN(); _Icf(0,K,T0,0,0) _(T0,_cfI)}
#define CFextern
Definition cfortran.h:1020
#define _Icf(N, T, I, X, Y)
Definition cfortran.h:1237
#define ABSOFT_cf2(T0)
Definition cfortran.h:876
#define _(A, B)
Definition cfortran.h:43

Definition at line 2140 of file cfortran.h.

2141 {_Icf(2,UU,T0,A0,0); _Icf(0,L,T0,0,0) CN(); _Icf(0,K,T0,0,0) _(T0,_cfI)}

◆ FCALLSCFUN1

#define FCALLSCFUN1 (   T0,
  CN,
  UN,
  LN,
  T1 
)     FCALLSCFUN5 (T0,CN,UN,LN,T1,CF_0,CF_0,CF_0,CF_0)

Definition at line 2112 of file cfortran.h.

◆ FCALLSCFUN10

#define FCALLSCFUN10 (   T0,
  CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA 
)     FCALLSCFUN14(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0)

Definition at line 2130 of file cfortran.h.

◆ FCALLSCFUN11

#define FCALLSCFUN11 (   T0,
  CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB 
)     FCALLSCFUN14(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0)

Definition at line 2132 of file cfortran.h.

◆ FCALLSCFUN12

#define FCALLSCFUN12 (   T0,
  CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC 
)     FCALLSCFUN14(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0)

Definition at line 2134 of file cfortran.h.

◆ FCALLSCFUN13

#define FCALLSCFUN13 (   T0,
  CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD 
)     FCALLSCFUN14(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0)

Definition at line 2136 of file cfortran.h.

◆ FCALLSCFUN14

#define FCALLSCFUN14 (   T0,
  CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE 
)
Value:
_Icf(2,UU,T0,A0,0); _Icf(0,L,T0,0,0) CN( TCF(LN,T1,1,0) TCF(LN,T2,2,1) \
TCF(LN,T3,3,1) TCF(LN,T4,4,1) TCF(LN,T5,5,1) TCF(LN,T6,6,1) TCF(LN,T7,7,1) \
TCF(LN,T8,8,1) TCF(LN,T9,9,1) TCF(LN,TA,A,1) TCF(LN,TB,B,1) TCF(LN,TC,C,1) \
TCF(LN,TD,D,1) TCF(LN,TE,E,1) ); _Icf(0,K,T0,0,0) \
#define RCF(TN, I)
Definition cfortran.h:1943
#define QCF(TN, I)
Definition cfortran.h:1808
#define TCF(NAME, TN, I, M)
Definition cfortran.h:1840
#define DCF(TN, I)
Definition cfortran.h:1803
#define CFARGT14(F, S, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, TA, TB, TC, TD, TE)
Definition cfortran.h:907
#define NCF(TN, I, C)
Definition cfortran.h:801

Definition at line 2143 of file cfortran.h.

2147 _Icf(2,UU,T0,A0,0); _Icf(0,L,T0,0,0) CN( TCF(LN,T1,1,0) TCF(LN,T2,2,1) \
2148 TCF(LN,T3,3,1) TCF(LN,T4,4,1) TCF(LN,T5,5,1) TCF(LN,T6,6,1) TCF(LN,T7,7,1) \
2149 TCF(LN,T8,8,1) TCF(LN,T9,9,1) TCF(LN,TA,A,1) TCF(LN,TB,B,1) TCF(LN,TC,C,1) \
2150 TCF(LN,TD,D,1) TCF(LN,TE,E,1) ); _Icf(0,K,T0,0,0) \

◆ FCALLSCFUN2

#define FCALLSCFUN2 (   T0,
  CN,
  UN,
  LN,
  T1,
  T2 
)     FCALLSCFUN5 (T0,CN,UN,LN,T1,T2,CF_0,CF_0,CF_0)

Definition at line 2114 of file cfortran.h.

◆ FCALLSCFUN3

#define FCALLSCFUN3 (   T0,
  CN,
  UN,
  LN,
  T1,
  T2,
  T3 
)     FCALLSCFUN5 (T0,CN,UN,LN,T1,T2,T3,CF_0,CF_0)

Definition at line 2116 of file cfortran.h.

◆ FCALLSCFUN4

#define FCALLSCFUN4 (   T0,
  CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4 
)     FCALLSCFUN5 (T0,CN,UN,LN,T1,T2,T3,T4,CF_0)

Definition at line 2118 of file cfortran.h.

◆ FCALLSCFUN5

#define FCALLSCFUN5 (   T0,
  CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5 
)     FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0)

Definition at line 2120 of file cfortran.h.

◆ FCALLSCFUN6

#define FCALLSCFUN6 (   T0,
  CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6 
)     FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0)

Definition at line 2122 of file cfortran.h.

◆ FCALLSCFUN7

#define FCALLSCFUN7 (   T0,
  CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7 
)     FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0)

Definition at line 2124 of file cfortran.h.

◆ FCALLSCFUN8

#define FCALLSCFUN8 (   T0,
  CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8 
)     FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0)

Definition at line 2126 of file cfortran.h.

◆ FCALLSCFUN9

#define FCALLSCFUN9 (   T0,
  CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9 
)     FCALLSCFUN10(T0,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0)

Definition at line 2128 of file cfortran.h.

◆ FCALLSCSUB0

#define FCALLSCSUB0 (   CN,
  UN,
  LN 
)    FCALLSCFUN0(VOID,CN,UN,LN)

Definition at line 2085 of file cfortran.h.

◆ FCALLSCSUB1

#define FCALLSCSUB1 (   CN,
  UN,
  LN,
  T1 
)    FCALLSCFUN1(VOID,CN,UN,LN,T1)

Definition at line 2086 of file cfortran.h.

◆ FCALLSCSUB10

#define FCALLSCSUB10 (   CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA 
)     FCALLSCFUN10(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA)

Definition at line 2101 of file cfortran.h.

◆ FCALLSCSUB11

#define FCALLSCSUB11 (   CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB 
)     FCALLSCFUN11(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB)

Definition at line 2103 of file cfortran.h.

◆ FCALLSCSUB12

#define FCALLSCSUB12 (   CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC 
)     FCALLSCFUN12(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC)

Definition at line 2105 of file cfortran.h.

◆ FCALLSCSUB13

#define FCALLSCSUB13 (   CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD 
)     FCALLSCFUN13(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD)

Definition at line 2107 of file cfortran.h.

◆ FCALLSCSUB14

#define FCALLSCSUB14 (   CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE 
)     FCALLSCFUN14(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE)

Definition at line 2109 of file cfortran.h.

◆ FCALLSCSUB2

#define FCALLSCSUB2 (   CN,
  UN,
  LN,
  T1,
  T2 
)    FCALLSCFUN2(VOID,CN,UN,LN,T1,T2)

Definition at line 2087 of file cfortran.h.

◆ FCALLSCSUB3

#define FCALLSCSUB3 (   CN,
  UN,
  LN,
  T1,
  T2,
  T3 
)    FCALLSCFUN3(VOID,CN,UN,LN,T1,T2,T3)

Definition at line 2088 of file cfortran.h.

◆ FCALLSCSUB4

#define FCALLSCSUB4 (   CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4 
)     FCALLSCFUN4(VOID,CN,UN,LN,T1,T2,T3,T4)

Definition at line 2089 of file cfortran.h.

◆ FCALLSCSUB5

#define FCALLSCSUB5 (   CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5 
)     FCALLSCFUN5(VOID,CN,UN,LN,T1,T2,T3,T4,T5)

Definition at line 2091 of file cfortran.h.

◆ FCALLSCSUB6

#define FCALLSCSUB6 (   CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6 
)     FCALLSCFUN6(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6)

Definition at line 2093 of file cfortran.h.

◆ FCALLSCSUB7

#define FCALLSCSUB7 (   CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7 
)     FCALLSCFUN7(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7)

Definition at line 2095 of file cfortran.h.

◆ FCALLSCSUB8

#define FCALLSCSUB8 (   CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8 
)     FCALLSCFUN8(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8)

Definition at line 2097 of file cfortran.h.

◆ FCALLSCSUB9

#define FCALLSCSUB9 (   CN,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9 
)     FCALLSCFUN9(VOID,CN,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9)

Definition at line 2099 of file cfortran.h.

◆ FCB2CSTR

#define FCB2CSTR (   FSTR,
  CSTR,
  DIM 
)
Value:
vkill_trailing(f2cstrv((char *)FSTR, (char *)CSTR, \
sizeof(FSTR)/cfelementsof(FSTR,DIM)+1, \
sizeof(FSTR)+cfelementsof(FSTR,DIM)), \
sizeof(FSTR)/cfelementsof(FSTR,DIM)+1, \
sizeof(FSTR)+cfelementsof(FSTR,DIM), ' ')
static char * f2cstrv(char *fstr, char *cstr, int elem_len, int sizeofcstr)
Definition cfortran.h:422
static char * vkill_trailing(char *cstr, int elem_len, int sizeofcstr, char t)
Definition cfortran.h:487

Definition at line 575 of file cfortran.h.

◆ firstindexlength

#define firstindexlength (   A)    (sizeof(A[0])==1 ? 1 : (sizeof(A) / sizeof(A[0])) )

Definition at line 316 of file cfortran.h.

◆ FLOAT_cfCCC

#define FLOAT_cfCCC (   A,
  B 
)    &A

Definition at line 1597 of file cfortran.h.

◆ FLOAT_cfE

#define FLOAT_cfE   FORTRAN_REAL A0;

Definition at line 1368 of file cfortran.h.

◆ FLOAT_cfF

#define FLOAT_cfF (   UN,
  LN 
)    FORTRAN_REAL FCALLSC_QUALIFIER fcallsc(UN,LN)(

Definition at line 2008 of file cfortran.h.

◆ FLOAT_cfFZ

#define FLOAT_cfFZ (   UN,
  LN 
)    FORTRAN_REAL FCALLSC_QUALIFIER fcallsc(UN,LN)(void

Definition at line 1978 of file cfortran.h.

◆ FLOAT_cfI

#define FLOAT_cfI   return A0;

Definition at line 2065 of file cfortran.h.

◆ FLOAT_cfINT

#define FLOAT_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLE_cfINT(N,A,B,X,Y,Z)

Definition at line 1241 of file cfortran.h.

◆ FLOAT_cfPU

#define FLOAT_cfPU (   A)    CFextern FORTRAN_REAL FCALLSC_QUALIFIER A

Definition at line 1354 of file cfortran.h.

◆ FLOAT_cfSTR

#define FLOAT_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1488 of file cfortran.h.

◆ FLOAT_cfT

#define FLOAT_cfT (   M,
  I,
  A,
  B,
 
)    *A

Definition at line 1843 of file cfortran.h.

◆ FLOAT_cfVCF

#define FLOAT_cfVCF (   A,
  B 
)

Definition at line 630 of file cfortran.h.

◆ FLOAT_cfX

#define FLOAT_cfX   return A0;

Definition at line 1655 of file cfortran.h.

◆ FLOATV_cfINT

#define FLOATV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEV_cfINT(N,A,B,X,Y,Z)

Definition at line 1267 of file cfortran.h.

◆ FLOATV_cfSTR

#define FLOATV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1507 of file cfortran.h.

◆ FLOATV_cfT

#define FLOATV_cfT (   M,
  I,
  A,
  B,
 
)    VOIDP A

Definition at line 1850 of file cfortran.h.

◆ FLOATVV_cfINT

#define FLOATVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1268 of file cfortran.h.

◆ FLOATVV_cfSTR

#define FLOATVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1508 of file cfortran.h.

◆ FLOATVV_cfT

#define FLOATVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1867 of file cfortran.h.

◆ FLOATVVV_cfINT

#define FLOATVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1269 of file cfortran.h.

◆ FLOATVVV_cfSTR

#define FLOATVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1509 of file cfortran.h.

◆ FLOATVVV_cfT

#define FLOATVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1868 of file cfortran.h.

◆ FLOATVVVV_cfINT

#define FLOATVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1270 of file cfortran.h.

◆ FLOATVVVV_cfSTR

#define FLOATVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1510 of file cfortran.h.

◆ FLOATVVVV_cfT

#define FLOATVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1869 of file cfortran.h.

◆ FLOATVVVVV_cfINT

#define FLOATVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1271 of file cfortran.h.

◆ FLOATVVVVV_cfSTR

#define FLOATVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1511 of file cfortran.h.

◆ FLOATVVVVV_cfT

#define FLOATVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1870 of file cfortran.h.

◆ FLOATVVVVVV_cfINT

#define FLOATVVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1272 of file cfortran.h.

◆ FLOATVVVVVV_cfSTR

#define FLOATVVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1512 of file cfortran.h.

◆ FLOATVVVVVV_cfT

#define FLOATVVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1871 of file cfortran.h.

◆ FLOATVVVVVVV_cfINT

#define FLOATVVVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1273 of file cfortran.h.

◆ FLOATVVVVVVV_cfPP

#define FLOATVVVVVVV_cfPP

Definition at line 239 of file cfortran.h.

◆ FLOATVVVVVVV_cfSTR

#define FLOATVVVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1513 of file cfortran.h.

◆ FLOATVVVVVVV_cfT

#define FLOATVVVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1872 of file cfortran.h.

◆ FLOATVVVVVVV_cfTYPE

#define FLOATVVVVVVV_cfTYPE   FORTRAN_REAL

Definition at line 1217 of file cfortran.h.

◆ FORTRAN_FUNCTION

#define FORTRAN_FUNCTION (   UN,
  LN 
)    CFC_(UN,LN)

Definition at line 194 of file cfortran.h.

◆ FORTRAN_REAL

#define FORTRAN_REAL   float

Definition at line 224 of file cfortran.h.

◆ H_CF_SPECIAL

#define H_CF_SPECIAL   unsigned

Definition at line 1469 of file cfortran.h.

◆ HCF

#define HCF (   TN,
 
)    _(TN,_cfSTR)(3,H,COMMA, H,_(C,I),0,0)

Definition at line 1466 of file cfortran.h.

◆ HH_CF_SPECIAL

#define HH_CF_SPECIAL

Definition at line 1470 of file cfortran.h.

◆ HHCF

#define HHCF (   TN,
 
)    _(TN,_cfSTR)(3,H,COMMA,HH,_(C,I),0,0)

Definition at line 1467 of file cfortran.h.

◆ HHHCF

#define HHHCF (   TN,
 
)    _(TN,_cfSTR)(3,H,COLON, H,_(C,I),0,0)

Definition at line 1468 of file cfortran.h.

◆ INT_cfAA

#define INT_cfAA (   T,
  A,
  B 
)    &B

Definition at line 715 of file cfortran.h.

◆ INT_cfB

#define INT_cfB (   T,
  A 
)    (_(T,VVVVVVV_cfTYPE)) A

Definition at line 1436 of file cfortran.h.

◆ INT_cfCC

#define INT_cfCC (   T,
  A,
  B 
)    _(T,_cfCCC)(A,B)

Definition at line 1615 of file cfortran.h.

◆ INT_cfCCC

#define INT_cfCCC (   A,
  B 
)    &A

Definition at line 1602 of file cfortran.h.

◆ INT_cfE

#define INT_cfE   int A0;

Definition at line 1372 of file cfortran.h.

◆ INT_cfF

#define INT_cfF (   UN,
  LN 
)    INT_cfFZ(UN,LN)

Definition at line 2012 of file cfortran.h.

◆ INT_cfFF

#define INT_cfFF

Definition at line 2019 of file cfortran.h.

◆ INT_cfFZ

#define INT_cfFZ (   UN,
  LN 
)    int FCALLSC_QUALIFIER fcallsc(UN,LN)(

Definition at line 1970 of file cfortran.h.

◆ INT_cfG

#define INT_cfG (   T,
  UN,
  LN 
)    INT_cfGZ(T,UN,LN)

Definition at line 1417 of file cfortran.h.

◆ INT_cfGZ

#define INT_cfGZ (   T,
  UN,
  LN 
)    A0=CFC_(UN,LN)(

Definition at line 1405 of file cfortran.h.

◆ INT_cfI

#define INT_cfI   return A0;

Definition at line 2069 of file cfortran.h.

◆ INT_cfINT

#define INT_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLE_cfINT(N,A,B,X,Y,Z)

Definition at line 1242 of file cfortran.h.

◆ INT_cfK

#define INT_cfK

Definition at line 2035 of file cfortran.h.

◆ INT_cfL

#define INT_cfL   A0=

Definition at line 2031 of file cfortran.h.

◆ INT_cfN

#define INT_cfN (   T,
  A 
)    _(T,VVVVVVV_cfTYPE) * A

Definition at line 804 of file cfortran.h.

◆ INT_cfPU

#define INT_cfPU (   A)    CFextern int FCALLSC_QUALIFIER A

Definition at line 1358 of file cfortran.h.

◆ INT_cfSEP

#define INT_cfSEP (   T,
  B 
)    _(A,B)

Definition at line 1184 of file cfortran.h.

◆ INT_cfSTR

#define INT_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1489 of file cfortran.h.

◆ INT_cfT

#define INT_cfT (   M,
  I,
  A,
  B,
 
)    *A

Definition at line 1844 of file cfortran.h.

◆ INT_cfU

#define INT_cfU (   T,
  A 
)    _(T,VVVVVVV_cfTYPE) A

Definition at line 1326 of file cfortran.h.

◆ INT_cfUU

#define INT_cfUU (   T,
  A 
)    _(T,VVVVVVV_cfTYPE) A

Definition at line 1346 of file cfortran.h.

◆ INT_cfV

#define INT_cfV (   T,
  A,
  B,
  F 
)    _(VCF_INT_,F)(T,A,B)

Definition at line 641 of file cfortran.h.

◆ INT_cfVCF

#define INT_cfVCF (   A,
  B 
)

Definition at line 634 of file cfortran.h.

◆ INT_cfX

#define INT_cfX   return A0;

Definition at line 1659 of file cfortran.h.

◆ INTEGER_BYTE

#define INTEGER_BYTE   signed char /* default */

Definition at line 1210 of file cfortran.h.

◆ INTV_cfAA

#define INTV_cfAA (   T,
  A,
  B 
)    _(T,VVVVVV_cfPP) A

Definition at line 716 of file cfortran.h.

◆ INTV_cfB

#define INTV_cfB (   T,
  A 
)    A

Definition at line 1437 of file cfortran.h.

◆ INTV_cfCC

#define INTV_cfCC (   T,
  A,
  B 
)    A

Definition at line 1616 of file cfortran.h.

◆ INTV_cfINT

#define INTV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEV_cfINT(N,A,B,X,Y,Z)

Definition at line 1274 of file cfortran.h.

◆ INTV_cfN

#define INTV_cfN (   T,
  A 
)    _(T,VVVVVV_cfTYPE) * A

Definition at line 805 of file cfortran.h.

◆ INTV_cfSEP

#define INTV_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1185 of file cfortran.h.

◆ INTV_cfSTR

#define INTV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1514 of file cfortran.h.

◆ INTV_cfT

#define INTV_cfT (   M,
  I,
  A,
  B,
 
)    A

Definition at line 1851 of file cfortran.h.

◆ INTV_cfU

#define INTV_cfU (   T,
  A 
)    _(T,VVVVVV_cfTYPE) * A

Definition at line 1327 of file cfortran.h.

◆ INTV_cfV

#define INTV_cfV (   T,
  A,
  B,
  F 
)

Definition at line 642 of file cfortran.h.

◆ INTVV_cfAA

#define INTVV_cfAA (   T,
  A,
  B 
)    _(T,VVVVV_cfPP) A[0]

Definition at line 717 of file cfortran.h.

◆ INTVV_cfB

#define INTVV_cfB (   T,
  A 
)    (A)[0]

Definition at line 1438 of file cfortran.h.

◆ INTVV_cfCC

#define INTVV_cfCC (   T,
  A,
  B 
)    A

Definition at line 1617 of file cfortran.h.

◆ INTVV_cfINT

#define INTVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1275 of file cfortran.h.

◆ INTVV_cfN

#define INTVV_cfN (   T,
  A 
)    _(T,VVVVV_cfTYPE) * A

Definition at line 806 of file cfortran.h.

◆ INTVV_cfSEP

#define INTVV_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1186 of file cfortran.h.

◆ INTVV_cfSTR

#define INTVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1515 of file cfortran.h.

◆ INTVV_cfT

#define INTVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1873 of file cfortran.h.

◆ INTVV_cfU

#define INTVV_cfU (   T,
  A 
)    _(T,VVVVV_cfTYPE) * A

Definition at line 1328 of file cfortran.h.

◆ INTVV_cfV

#define INTVV_cfV (   T,
  A,
  B,
  F 
)

Definition at line 643 of file cfortran.h.

◆ INTVVV_cfAA

#define INTVVV_cfAA (   T,
  A,
  B 
)    _(T,VVVV_cfPP) A[0][0]

Definition at line 718 of file cfortran.h.

◆ INTVVV_cfB

#define INTVVV_cfB (   T,
  A 
)    (A)[0][0]

Definition at line 1439 of file cfortran.h.

◆ INTVVV_cfCC

#define INTVVV_cfCC (   T,
  A,
  B 
)    A

Definition at line 1618 of file cfortran.h.

◆ INTVVV_cfINT

#define INTVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1276 of file cfortran.h.

◆ INTVVV_cfN

#define INTVVV_cfN (   T,
  A 
)    _(T,VVVV_cfTYPE) * A

Definition at line 807 of file cfortran.h.

◆ INTVVV_cfSEP

#define INTVVV_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1187 of file cfortran.h.

◆ INTVVV_cfSTR

#define INTVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1516 of file cfortran.h.

◆ INTVVV_cfT

#define INTVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1874 of file cfortran.h.

◆ INTVVV_cfU

#define INTVVV_cfU (   T,
  A 
)    _(T,VVVV_cfTYPE) * A

Definition at line 1329 of file cfortran.h.

◆ INTVVV_cfV

#define INTVVV_cfV (   T,
  A,
  B,
  F 
)

Definition at line 644 of file cfortran.h.

◆ INTVVVV_cfAA

#define INTVVVV_cfAA (   T,
  A,
  B 
)    _(T,VVV_cfPP) A[0][0][0]

Definition at line 719 of file cfortran.h.

◆ INTVVVV_cfB

#define INTVVVV_cfB (   T,
  A 
)    (A)[0][0][0]

Definition at line 1440 of file cfortran.h.

◆ INTVVVV_cfCC

#define INTVVVV_cfCC (   T,
  A,
  B 
)    A

Definition at line 1619 of file cfortran.h.

◆ INTVVVV_cfINT

#define INTVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1277 of file cfortran.h.

◆ INTVVVV_cfN

#define INTVVVV_cfN (   T,
  A 
)    _(T,VVV_cfTYPE) * A

Definition at line 808 of file cfortran.h.

◆ INTVVVV_cfSEP

#define INTVVVV_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1188 of file cfortran.h.

◆ INTVVVV_cfSTR

#define INTVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1517 of file cfortran.h.

◆ INTVVVV_cfT

#define INTVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1875 of file cfortran.h.

◆ INTVVVV_cfU

#define INTVVVV_cfU (   T,
  A 
)    _(T,VVV_cfTYPE) * A

Definition at line 1330 of file cfortran.h.

◆ INTVVVV_cfV

#define INTVVVV_cfV (   T,
  A,
  B,
  F 
)

Definition at line 645 of file cfortran.h.

◆ INTVVVVV_cfAA

#define INTVVVVV_cfAA (   T,
  A,
  B 
)    _(T,VV_cfPP) A[0][0][0][0]

Definition at line 720 of file cfortran.h.

◆ INTVVVVV_cfB

#define INTVVVVV_cfB (   T,
  A 
)    (A)[0][0][0][0]

Definition at line 1441 of file cfortran.h.

◆ INTVVVVV_cfCC

#define INTVVVVV_cfCC (   T,
  A,
  B 
)    A

Definition at line 1620 of file cfortran.h.

◆ INTVVVVV_cfINT

#define INTVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1278 of file cfortran.h.

◆ INTVVVVV_cfN

#define INTVVVVV_cfN (   T,
  A 
)    _(T,VV_cfTYPE) * A

Definition at line 809 of file cfortran.h.

◆ INTVVVVV_cfSEP

#define INTVVVVV_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1189 of file cfortran.h.

◆ INTVVVVV_cfSTR

#define INTVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1518 of file cfortran.h.

◆ INTVVVVV_cfT

#define INTVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1876 of file cfortran.h.

◆ INTVVVVV_cfU

#define INTVVVVV_cfU (   T,
  A 
)    _(T,VV_cfTYPE) * A

Definition at line 1331 of file cfortran.h.

◆ INTVVVVV_cfV

#define INTVVVVV_cfV (   T,
  A,
  B,
  F 
)

Definition at line 646 of file cfortran.h.

◆ INTVVVVVV_cfAA

#define INTVVVVVV_cfAA (   T,
  A,
  B 
)    _(T,V_cfPP) A[0][0][0][0][0]

Definition at line 721 of file cfortran.h.

◆ INTVVVVVV_cfB

#define INTVVVVVV_cfB (   T,
  A 
)    (A)[0][0][0][0][0]

Definition at line 1442 of file cfortran.h.

◆ INTVVVVVV_cfCC

#define INTVVVVVV_cfCC (   T,
  A,
  B 
)    A

Definition at line 1621 of file cfortran.h.

◆ INTVVVVVV_cfINT

#define INTVVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1279 of file cfortran.h.

◆ INTVVVVVV_cfN

#define INTVVVVVV_cfN (   T,
  A 
)    _(T,V_cfTYPE) * A

Definition at line 810 of file cfortran.h.

◆ INTVVVVVV_cfSEP

#define INTVVVVVV_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1190 of file cfortran.h.

◆ INTVVVVVV_cfSTR

#define INTVVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1519 of file cfortran.h.

◆ INTVVVVVV_cfT

#define INTVVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1877 of file cfortran.h.

◆ INTVVVVVV_cfU

#define INTVVVVVV_cfU (   T,
  A 
)    _(T,V_cfTYPE) * A

Definition at line 1332 of file cfortran.h.

◆ INTVVVVVV_cfV

#define INTVVVVVV_cfV (   T,
  A,
  B,
  F 
)

Definition at line 647 of file cfortran.h.

◆ INTVVVVVVV_cfAA

#define INTVVVVVVV_cfAA (   T,
  A,
  B 
)    _(T,_cfPP) A[0][0][0][0][0][0]

Definition at line 722 of file cfortran.h.

◆ INTVVVVVVV_cfB

#define INTVVVVVVV_cfB (   T,
  A 
)    (A)[0][0][0][0][0][0]

Definition at line 1443 of file cfortran.h.

◆ INTVVVVVVV_cfCC

#define INTVVVVVVV_cfCC (   T,
  A,
  B 
)    A

Definition at line 1622 of file cfortran.h.

◆ INTVVVVVVV_cfINT

#define INTVVVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1280 of file cfortran.h.

◆ INTVVVVVVV_cfN

#define INTVVVVVVV_cfN (   T,
  A 
)    _(T,_cfTYPE) * A

Definition at line 811 of file cfortran.h.

◆ INTVVVVVVV_cfPP

#define INTVVVVVVV_cfPP   /* These complement FLOATVVVVVVV_cfPP. */

Definition at line 1422 of file cfortran.h.

◆ INTVVVVVVV_cfSEP

#define INTVVVVVVV_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1191 of file cfortran.h.

◆ INTVVVVVVV_cfSTR

#define INTVVVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1520 of file cfortran.h.

◆ INTVVVVVVV_cfT

#define INTVVVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1878 of file cfortran.h.

◆ INTVVVVVVV_cfTYPE

#define INTVVVVVVV_cfTYPE   int

Definition at line 1218 of file cfortran.h.

◆ INTVVVVVVV_cfU

#define INTVVVVVVV_cfU (   T,
  A 
)    _(T,_cfTYPE) * A

Definition at line 1333 of file cfortran.h.

◆ INTVVVVVVV_cfV

#define INTVVVVVVV_cfV (   T,
  A,
  B,
  F 
)

Definition at line 648 of file cfortran.h.

◆ JCF

#define JCF (   TN,
 
)    _(TN,_cfSTR)(1,J,_(B,I), 0,0,0,0)

Definition at line 749 of file cfortran.h.

◆ KCF

#define KCF (   TN,
 
)    _(TN,_cfSTR)(1,KK,_(B,I), 0,0,0,0)

Definition at line 765 of file cfortran.h.

◆ LOGICAL_cfA

#define LOGICAL_cfA (   M,
  I,
  A,
  B 
)    B=C2FLOGICAL(B);

Definition at line 679 of file cfortran.h.

◆ LOGICAL_cfC

#define LOGICAL_cfC (   M,
  I,
  A,
  B,
  C 
)    A=C2FLOGICAL( A);

Definition at line 1565 of file cfortran.h.

◆ LOGICAL_cfCCC

#define LOGICAL_cfCCC (   A,
  B 
)    &A

Definition at line 1603 of file cfortran.h.

◆ LOGICAL_cfE

#define LOGICAL_cfE   int A0;

Definition at line 1373 of file cfortran.h.

◆ LOGICAL_cfF

#define LOGICAL_cfF (   UN,
  LN 
)    LOGICAL_cfFZ(UN,LN)

Definition at line 2013 of file cfortran.h.

◆ LOGICAL_cfFZ

#define LOGICAL_cfFZ (   UN,
  LN 
)    int FCALLSC_QUALIFIER fcallsc(UN,LN)(

Definition at line 1971 of file cfortran.h.

◆ LOGICAL_cfH

#define LOGICAL_cfH (   S,
  U,
  B 
)

Definition at line 1472 of file cfortran.h.

◆ LOGICAL_cfI

#define LOGICAL_cfI   return C2FLOGICAL(A0);

Definition at line 2074 of file cfortran.h.

◆ LOGICAL_cfINT

#define LOGICAL_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLE_cfINT(N,A,B,X,Y,Z)

Definition at line 1243 of file cfortran.h.

◆ LOGICAL_cfJ

#define LOGICAL_cfJ (   B)    DEFAULT_cfJ(B)

Definition at line 755 of file cfortran.h.

◆ LOGICAL_cfKK

#define LOGICAL_cfKK (   B)    DEFAULT_cfKK(B)

Definition at line 771 of file cfortran.h.

◆ LOGICAL_cfPU

#define LOGICAL_cfPU (   A)    CFextern int FCALLSC_QUALIFIER A

Definition at line 1359 of file cfortran.h.

◆ LOGICAL_cfQ

#define LOGICAL_cfQ (   B)

Definition at line 1810 of file cfortran.h.

◆ LOGICAL_cfR

#define LOGICAL_cfR (   A,
  B,
 
)

Definition at line 1945 of file cfortran.h.

◆ LOGICAL_cfS

#define LOGICAL_cfS (   M,
  I,
  A 
)

Definition at line 1456 of file cfortran.h.

◆ LOGICAL_cfSTR

#define LOGICAL_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,LOGICAL,A,B,C,D,E)

Definition at line 1490 of file cfortran.h.

◆ LOGICAL_cfT

#define LOGICAL_cfT (   M,
  I,
  A,
  B,
 
)    F2CLOGICAL(*A)

Definition at line 1845 of file cfortran.h.

◆ LOGICAL_cfVCF

#define LOGICAL_cfVCF (   A,
  B 
)

Definition at line 635 of file cfortran.h.

◆ LOGICAL_cfW

#define LOGICAL_cfW (   A,
  B 
)

Definition at line 783 of file cfortran.h.

◆ LOGICAL_cfX

#define LOGICAL_cfX   return F2CLOGICAL(A0);

Definition at line 1660 of file cfortran.h.

◆ LOGICALV_cfINT

#define LOGICALV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEV_cfINT(N,A,B,X,Y,Z)

Definition at line 1281 of file cfortran.h.

◆ LOGICALV_cfSTR

#define LOGICALV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1521 of file cfortran.h.

◆ LOGICALV_cfT

#define LOGICALV_cfT (   M,
  I,
  A,
  B,
 
)    A

Definition at line 1852 of file cfortran.h.

◆ LOGICALVV_cfINT

#define LOGICALVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1282 of file cfortran.h.

◆ LOGICALVV_cfSTR

#define LOGICALVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1522 of file cfortran.h.

◆ LOGICALVV_cfT

#define LOGICALVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1879 of file cfortran.h.

◆ LOGICALVVV_cfINT

#define LOGICALVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1283 of file cfortran.h.

◆ LOGICALVVV_cfSTR

#define LOGICALVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1523 of file cfortran.h.

◆ LOGICALVVV_cfT

#define LOGICALVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1880 of file cfortran.h.

◆ LOGICALVVVV_cfINT

#define LOGICALVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1284 of file cfortran.h.

◆ LOGICALVVVV_cfSTR

#define LOGICALVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1524 of file cfortran.h.

◆ LOGICALVVVV_cfT

#define LOGICALVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1881 of file cfortran.h.

◆ LOGICALVVVVV_cfINT

#define LOGICALVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1285 of file cfortran.h.

◆ LOGICALVVVVV_cfSTR

#define LOGICALVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1525 of file cfortran.h.

◆ LOGICALVVVVV_cfT

#define LOGICALVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1882 of file cfortran.h.

◆ LOGICALVVVVVV_cfINT

#define LOGICALVVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1286 of file cfortran.h.

◆ LOGICALVVVVVV_cfSTR

#define LOGICALVVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1526 of file cfortran.h.

◆ LOGICALVVVVVV_cfT

#define LOGICALVVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1883 of file cfortran.h.

◆ LOGICALVVVVVVV_cfINT

#define LOGICALVVVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1287 of file cfortran.h.

◆ LOGICALVVVVVVV_cfPP

#define LOGICALVVVVVVV_cfPP

Definition at line 1424 of file cfortran.h.

◆ LOGICALVVVVVVV_cfSTR

#define LOGICALVVVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1527 of file cfortran.h.

◆ LOGICALVVVVVVV_cfT

#define LOGICALVVVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1884 of file cfortran.h.

◆ LOGICALVVVVVVV_cfTYPE

#define LOGICALVVVVVVV_cfTYPE   int

Definition at line 1219 of file cfortran.h.

◆ LONG_cfCCC

#define LONG_cfCCC (   A,
  B 
)    &A

Definition at line 1604 of file cfortran.h.

◆ LONG_cfE

#define LONG_cfE   long A0;

Definition at line 1374 of file cfortran.h.

◆ LONG_cfF

#define LONG_cfF (   UN,
  LN 
)    LONG_cfFZ(UN,LN)

Definition at line 2014 of file cfortran.h.

◆ LONG_cfFZ

#define LONG_cfFZ (   UN,
  LN 
)    long FCALLSC_QUALIFIER fcallsc(UN,LN)(

Definition at line 1972 of file cfortran.h.

◆ LONG_cfI

#define LONG_cfI   return A0;

Definition at line 2076 of file cfortran.h.

◆ LONG_cfINT

#define LONG_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLE_cfINT(N,A,B,X,Y,Z)

Definition at line 1244 of file cfortran.h.

◆ LONG_cfPU

#define LONG_cfPU (   A)    CFextern long FCALLSC_QUALIFIER A

Definition at line 1360 of file cfortran.h.

◆ LONG_cfSTR

#define LONG_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1491 of file cfortran.h.

◆ LONG_cfT

#define LONG_cfT (   M,
  I,
  A,
  B,
 
)    *A

Definition at line 1846 of file cfortran.h.

◆ LONG_cfVCF

#define LONG_cfVCF (   A,
  B 
)

Definition at line 636 of file cfortran.h.

◆ LONG_cfX

#define LONG_cfX   return A0;

Definition at line 1661 of file cfortran.h.

◆ LONGV_cfINT

#define LONGV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEV_cfINT(N,A,B,X,Y,Z)

Definition at line 1288 of file cfortran.h.

◆ LONGV_cfSTR

#define LONGV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1528 of file cfortran.h.

◆ LONGV_cfT

#define LONGV_cfT (   M,
  I,
  A,
  B,
 
)    A

Definition at line 1853 of file cfortran.h.

◆ LONGVV_cfINT

#define LONGVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1289 of file cfortran.h.

◆ LONGVV_cfSTR

#define LONGVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1529 of file cfortran.h.

◆ LONGVV_cfT

#define LONGVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1885 of file cfortran.h.

◆ LONGVVV_cfINT

#define LONGVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1290 of file cfortran.h.

◆ LONGVVV_cfSTR

#define LONGVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1530 of file cfortran.h.

◆ LONGVVV_cfT

#define LONGVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1886 of file cfortran.h.

◆ LONGVVVV_cfINT

#define LONGVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1291 of file cfortran.h.

◆ LONGVVVV_cfSTR

#define LONGVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1531 of file cfortran.h.

◆ LONGVVVV_cfT

#define LONGVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1887 of file cfortran.h.

◆ LONGVVVVV_cfINT

#define LONGVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1292 of file cfortran.h.

◆ LONGVVVVV_cfSTR

#define LONGVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1532 of file cfortran.h.

◆ LONGVVVVV_cfT

#define LONGVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1888 of file cfortran.h.

◆ LONGVVVVVV_cfINT

#define LONGVVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1293 of file cfortran.h.

◆ LONGVVVVVV_cfSTR

#define LONGVVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1533 of file cfortran.h.

◆ LONGVVVVVV_cfT

#define LONGVVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1889 of file cfortran.h.

◆ LONGVVVVVVV_cfINT

#define LONGVVVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1294 of file cfortran.h.

◆ LONGVVVVVVV_cfPP

#define LONGVVVVVVV_cfPP

Definition at line 1425 of file cfortran.h.

◆ LONGVVVVVVV_cfSTR

#define LONGVVVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1534 of file cfortran.h.

◆ LONGVVVVVVV_cfT

#define LONGVVVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1890 of file cfortran.h.

◆ LONGVVVVVVV_cfTYPE

#define LONGVVVVVVV_cfTYPE   long

Definition at line 1220 of file cfortran.h.

◆ MAX_LEN_FORTRAN_FUNCTION_STRING

#define MAX_LEN_FORTRAN_FUNCTION_STRING   0x4FE

Definition at line 1171 of file cfortran.h.

◆ MAX_PREPRO_ARGS

#define MAX_PREPRO_ARGS   99

Definition at line 852 of file cfortran.h.

◆ NCF

#define NCF (   TN,
  I,
  C 
)    _SEP_(TN,C,COMMA) _Icf(2,N,TN,_(A,I),0)

Definition at line 801 of file cfortran.h.

◆ NNCF

#define NNCF (   TN,
  I,
  C 
)    UUCF(TN,I,C)

Definition at line 802 of file cfortran.h.

◆ NNNCF

#define NNNCF (   TN,
  I,
  C 
)    _SEP_(TN,C,COLON) _Icf(2,N,TN,_(A,I),0)

Definition at line 803 of file cfortran.h.

◆ NUM_ELEM_ARG

#define NUM_ELEM_ARG (   B)    *_2(A,B),_NUM_ELEM_ARG

Definition at line 532 of file cfortran.h.

◆ NUM_ELEMS

#define NUM_ELEMS (   A)    A,_NUM_ELEMS

Definition at line 531 of file cfortran.h.

◆ orig_fcallsc

#define orig_fcallsc (   UN,
  LN 
)    CFC_(UN,LN)

Definition at line 184 of file cfortran.h.

◆ PBYTE_cfAAP

#define PBYTE_cfAAP (   A,
  B 
)    &A

Definition at line 706 of file cfortran.h.

◆ PBYTE_cfCCC

#define PBYTE_cfCCC (   A,
  B 
)    A

Definition at line 1606 of file cfortran.h.

◆ PBYTE_cfINT

#define PBYTE_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PDOUBLE_cfINT(N,A,B,X,Y,Z)

Definition at line 1246 of file cfortran.h.

◆ PBYTE_cfPP

#define PBYTE_cfPP

Definition at line 1427 of file cfortran.h.

◆ PBYTE_cfSTR

#define PBYTE_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1542 of file cfortran.h.

◆ PBYTE_cfT

#define PBYTE_cfT (   M,
  I,
  A,
  B,
 
)    A

Definition at line 1897 of file cfortran.h.

◆ PBYTE_cfTYPE

#define PBYTE_cfTYPE   INTEGER_BYTE

Definition at line 1222 of file cfortran.h.

◆ PBYTE_cfVP

#define PBYTE_cfVP (   A,
  B 
)    PINT_cfVP(A,B)

Definition at line 609 of file cfortran.h.

◆ PDOUBLE_cfAAP

#define PDOUBLE_cfAAP (   A,
  B 
)    &A

Definition at line 707 of file cfortran.h.

◆ PDOUBLE_cfCCC

#define PDOUBLE_cfCCC (   A,
  B 
)    A

Definition at line 1607 of file cfortran.h.

◆ PDOUBLE_cfINT

#define PDOUBLE_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    _(CFARGS,N)(A,PINT,B,X,Y,Z,0)

Definition at line 1247 of file cfortran.h.

◆ PDOUBLE_cfPP

#define PDOUBLE_cfPP

Definition at line 1429 of file cfortran.h.

◆ PDOUBLE_cfSTR

#define PDOUBLE_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1543 of file cfortran.h.

◆ PDOUBLE_cfT

#define PDOUBLE_cfT (   M,
  I,
  A,
  B,
 
)    A

Definition at line 1898 of file cfortran.h.

◆ PDOUBLE_cfTYPE

#define PDOUBLE_cfTYPE   DOUBLE_PRECISION

Definition at line 1223 of file cfortran.h.

◆ PDOUBLE_cfVP

#define PDOUBLE_cfVP (   A,
  B 
)

Definition at line 610 of file cfortran.h.

◆ PFLOAT_cfAAP

#define PFLOAT_cfAAP (   A,
  B 
)    FLOATVVVVVVV_cfPP &A

Definition at line 708 of file cfortran.h.

◆ PFLOAT_cfCCC

#define PFLOAT_cfCCC (   A,
  B 
)    A

Definition at line 1608 of file cfortran.h.

◆ PFLOAT_cfINT

#define PFLOAT_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PDOUBLE_cfINT(N,A,B,X,Y,Z)

Definition at line 1248 of file cfortran.h.

◆ PFLOAT_cfPP

#define PFLOAT_cfPP   FLOATVVVVVVV_cfPP

Definition at line 1433 of file cfortran.h.

◆ PFLOAT_cfSTR

#define PFLOAT_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1544 of file cfortran.h.

◆ PFLOAT_cfT

#define PFLOAT_cfT (   M,
  I,
  A,
  B,
 
)    VOIDP A

Definition at line 1899 of file cfortran.h.

◆ PFLOAT_cfTYPE

#define PFLOAT_cfTYPE   FORTRAN_REAL

Definition at line 1224 of file cfortran.h.

◆ PFLOAT_cfVP

#define PFLOAT_cfVP (   A,
  B 
)

Definition at line 611 of file cfortran.h.

◆ PINT_cfAA

#define PINT_cfAA (   T,
  A,
  B 
)    _(T,_cfAAP)(A,B)

Definition at line 723 of file cfortran.h.

◆ PINT_cfAAP

#define PINT_cfAAP (   A,
  B 
)    &A

Definition at line 709 of file cfortran.h.

◆ PINT_cfB

#define PINT_cfB (   T,
  A 
)    _(T,_cfPP)&A

Definition at line 1444 of file cfortran.h.

◆ PINT_cfCC

#define PINT_cfCC (   T,
  A,
  B 
)    _(T,_cfCCC)(A,B)

Definition at line 1623 of file cfortran.h.

◆ PINT_cfCCC

#define PINT_cfCCC (   A,
  B 
)    A

Definition at line 1609 of file cfortran.h.

◆ PINT_cfINT

#define PINT_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PDOUBLE_cfINT(N,A,B,X,Y,Z)

Definition at line 1249 of file cfortran.h.

◆ PINT_cfN

#define PINT_cfN (   T,
  A 
)    _(T,_cfTYPE) * A

Definition at line 812 of file cfortran.h.

◆ PINT_cfPP

#define PINT_cfPP

Definition at line 1428 of file cfortran.h.

◆ PINT_cfSEP

#define PINT_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1192 of file cfortran.h.

◆ PINT_cfSTR

#define PINT_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1545 of file cfortran.h.

◆ PINT_cfT

#define PINT_cfT (   M,
  I,
  A,
  B,
 
)    A

Definition at line 1900 of file cfortran.h.

◆ PINT_cfTYPE

#define PINT_cfTYPE   int

Definition at line 1225 of file cfortran.h.

◆ PINT_cfU

#define PINT_cfU (   T,
  A 
)    _(T,_cfTYPE) * A

Definition at line 1334 of file cfortran.h.

◆ PINT_cfV

#define PINT_cfV (   T,
  A,
  B,
  F 
)    _(T,_cfVP)(A,B)

Definition at line 649 of file cfortran.h.

◆ PINT_cfVP

#define PINT_cfVP (   A,
  B 
)

Definition at line 618 of file cfortran.h.

◆ PLOGICAL_cfA

#define PLOGICAL_cfA (   M,
  I,
  A,
  B 
)    A=C2FLOGICAL(A);

Definition at line 680 of file cfortran.h.

◆ PLOGICAL_cfAAP

#define PLOGICAL_cfAAP (   A,
  B 
)    B= &A /* B used to keep a common W table. */

Definition at line 710 of file cfortran.h.

◆ PLOGICAL_cfC

#define PLOGICAL_cfC (   M,
  I,
  A,
  B,
  C 
)    *A=C2FLOGICAL(*A);

Definition at line 1566 of file cfortran.h.

◆ PLOGICAL_cfCCC

#define PLOGICAL_cfCCC (   A,
  B 
)    B=A /* B used to keep a common W table. */

Definition at line 1610 of file cfortran.h.

◆ PLOGICAL_cfH

#define PLOGICAL_cfH (   S,
  U,
  B 
)

Definition at line 1473 of file cfortran.h.

◆ PLOGICAL_cfINT

#define PLOGICAL_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PDOUBLE_cfINT(N,A,B,X,Y,Z)

Definition at line 1250 of file cfortran.h.

◆ PLOGICAL_cfJ

#define PLOGICAL_cfJ (   B)    DEFAULT_cfJ(B)

Definition at line 756 of file cfortran.h.

◆ PLOGICAL_cfKK

#define PLOGICAL_cfKK (   B)    DEFAULT_cfKK(B)

Definition at line 772 of file cfortran.h.

◆ PLOGICAL_cfPP

#define PLOGICAL_cfPP

Definition at line 1430 of file cfortran.h.

◆ PLOGICAL_cfQ

#define PLOGICAL_cfQ (   B)

Definition at line 1811 of file cfortran.h.

◆ PLOGICAL_cfR

#define PLOGICAL_cfR (   A,
  B,
 
)    *A=C2FLOGICAL(*A);

Definition at line 1946 of file cfortran.h.

◆ PLOGICAL_cfS

#define PLOGICAL_cfS (   M,
  I,
  A 
)

Definition at line 1457 of file cfortran.h.

◆ PLOGICAL_cfSTR

#define PLOGICAL_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,PLOGICAL,A,B,C,D,E)

Definition at line 1546 of file cfortran.h.

◆ PLOGICAL_cfT

#define PLOGICAL_cfT (   M,
  I,
  A,
  B,
 
)    ((*A=F2CLOGICAL(*A)),A)

Definition at line 1901 of file cfortran.h.

◆ PLOGICAL_cfTYPE

#define PLOGICAL_cfTYPE   int

Definition at line 1226 of file cfortran.h.

◆ PLOGICAL_cfVP

#define PLOGICAL_cfVP (   A,
  B 
)    int *B; /* Returning LOGICAL in FUNn and SUBn */

Definition at line 620 of file cfortran.h.

◆ PLOGICAL_cfW

#define PLOGICAL_cfW (   A,
  B 
)    *B=F2CLOGICAL(*B);

Definition at line 784 of file cfortran.h.

◆ PLONG_cfAAP

#define PLONG_cfAAP (   A,
  B 
)    &A

Definition at line 711 of file cfortran.h.

◆ PLONG_cfCCC

#define PLONG_cfCCC (   A,
  B 
)    A

Definition at line 1611 of file cfortran.h.

◆ PLONG_cfINT

#define PLONG_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PDOUBLE_cfINT(N,A,B,X,Y,Z)

Definition at line 1251 of file cfortran.h.

◆ PLONG_cfPP

#define PLONG_cfPP

Definition at line 1431 of file cfortran.h.

◆ PLONG_cfSTR

#define PLONG_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1547 of file cfortran.h.

◆ PLONG_cfT

#define PLONG_cfT (   M,
  I,
  A,
  B,
 
)    A

Definition at line 1902 of file cfortran.h.

◆ PLONG_cfTYPE

#define PLONG_cfTYPE   long

Definition at line 1227 of file cfortran.h.

◆ PLONG_cfVP

#define PLONG_cfVP (   A,
  B 
)    PINT_cfVP(A,B)

Definition at line 621 of file cfortran.h.

◆ PNSTRING_cfH

#define PNSTRING_cfH (   S,
  U,
  B 
)    STRING_cfH(S,U,B)

Definition at line 1478 of file cfortran.h.

◆ PNSTRING_cfINT

#define PNSTRING_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PVOID_cfINT(N,A,B,X,Y,Z)

Definition at line 1316 of file cfortran.h.

◆ PNSTRING_cfN

#define PNSTRING_cfN (   T,
  A 
)    STRING_cfN(T,A) /* CRAY insists on arg.'s here. */

Definition at line 832 of file cfortran.h.

◆ PNSTRING_cfQ

#define PNSTRING_cfQ (   B)    char *B=NULL;

Definition at line 1816 of file cfortran.h.

◆ PNSTRING_cfR

#define PNSTRING_cfR (   A,
  B,
 
)    PSTRING_cfR(A,B,D)

Definition at line 1965 of file cfortran.h.

◆ PNSTRING_cfSEP

#define PNSTRING_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1201 of file cfortran.h.

◆ PNSTRING_cfSTR

#define PNSTRING_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,PNSTRING,A,B,C,D,E)

Definition at line 1553 of file cfortran.h.

◆ PNSTRING_cfT

#define PNSTRING_cfT (   M,
  I,
  A,
  B,
 
)    STRING_cfT(M,I,A,B,D)

Definition at line 1939 of file cfortran.h.

◆ PPSTRING_cfH

#define PPSTRING_cfH (   S,
  U,
  B 
)    STRING_cfH(S,U,B)

Definition at line 1479 of file cfortran.h.

◆ PPSTRING_cfINT

#define PPSTRING_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PVOID_cfINT(N,A,B,X,Y,Z)

Definition at line 1317 of file cfortran.h.

◆ PPSTRING_cfN

#define PPSTRING_cfN (   T,
  A 
)    STRING_cfN(T,A) /* CRAY insists on arg.'s here. */

Definition at line 833 of file cfortran.h.

◆ PPSTRING_cfQ

#define PPSTRING_cfQ (   B)

Definition at line 1817 of file cfortran.h.

◆ PPSTRING_cfR

#define PPSTRING_cfR (   A,
  B,
 
)

Definition at line 1966 of file cfortran.h.

◆ PPSTRING_cfSEP

#define PPSTRING_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1202 of file cfortran.h.

◆ PPSTRING_cfSTR

#define PPSTRING_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,PPSTRING,A,B,C,D,E)

Definition at line 1554 of file cfortran.h.

◆ PPSTRING_cfT

#define PPSTRING_cfT (   M,
  I,
  A,
  B,
 
)    A

Definition at line 1936 of file cfortran.h.

◆ preface_fcallsc

#define preface_fcallsc (   P,
  p,
  UN,
  LN 
)    CFC_(_(P,UN),_(p,LN))

Definition at line 190 of file cfortran.h.

◆ PROTOCCALLSFFUN0

#define PROTOCCALLSFFUN0 (   F,
  UN,
  LN 
)
Value:
static _Icf(2,U,F,CFFUN(UN),0)() {_(F,_cfE) _Icf(3,GZ,F,UN,LN) ABSOFT_cf1(F));_(F,_cfX)}
#define CF_NULL_PROTO
Definition cfortran.h:269
#define ABSOFT_cf1(T0)
Definition cfortran.h:875

Definition at line 1730 of file cfortran.h.

1732 {_(F,_cfE) _Icf(3,GZ,F,UN,LN) ABSOFT_cf1(F));_(F,_cfX)}

◆ PROTOCCALLSFFUN1

#define PROTOCCALLSFFUN1 (   T0,
  UN,
  LN,
  T1 
)     PROTOCCALLSFFUN5 (T0,UN,LN,T1,CF_0,CF_0,CF_0,CF_0)

Definition at line 1734 of file cfortran.h.

◆ PROTOCCALLSFFUN10

#define PROTOCCALLSFFUN10 (   T0,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA 
)     PROTOCCALLSFFUN14(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0)

Definition at line 1752 of file cfortran.h.

◆ PROTOCCALLSFFUN11

#define PROTOCCALLSFFUN11 (   T0,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB 
)     PROTOCCALLSFFUN14(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0)

Definition at line 1754 of file cfortran.h.

◆ PROTOCCALLSFFUN12

#define PROTOCCALLSFFUN12 (   T0,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC 
)     PROTOCCALLSFFUN14(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0)

Definition at line 1756 of file cfortran.h.

◆ PROTOCCALLSFFUN13

#define PROTOCCALLSFFUN13 (   T0,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD 
)     PROTOCCALLSFFUN14(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0)

Definition at line 1758 of file cfortran.h.

◆ PROTOCCALLSFFUN14

#define PROTOCCALLSFFUN14 (   T0,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE 
)
Value:
_(T0,_cfPU)(CFC_(UN,LN))(CF_NULL_PROTO); static _Icf(2,U,T0,CFFUN(UN),0)( \
CCF(LN,T1,1) CCF(LN,T2,2) CCF(LN,T3,3) CCF(LN,T4,4) CCF(LN,T5,5) \
CCF(LN,T6,6) CCF(LN,T7,7) CCF(LN,T8,8) CCF(LN,T9,9) CCF(LN,TA,A) \
CCF(LN,TB,B) CCF(LN,TC,C) CCF(LN,TD,D) CCF(LN,TE,E) _Icf(3,G,T0,UN,LN) \
WCF(T1,A1,1) WCF(T2,A2,2) WCF(T3,A3,3) WCF(T4,A4,4) WCF(T5,A5,5) \
WCF(T6,A6,6) WCF(T7,A7,7) WCF(T8,A8,8) WCF(T9,A9,9) WCF(TA,AA,A) \
WCF(TB,AB,B) WCF(TC,AC,C) WCF(TD,AD,D) WCF(TE,AE,E) _(T0,_cfX)}
#define _Z
Definition cfortran.h:883
#define CCF(NAME, TN, I)
Definition cfortran.h:1563
#define HCF(TN, I)
Definition cfortran.h:1466
#define CCCF(TN, I, M)
Definition cfortran.h:1614
#define UCF(TN, I, C)
Definition cfortran.h:1323
#define VCF(TN, I)
Definition cfortran.h:639

Definition at line 1764 of file cfortran.h.

1768 CCF(LN,T1,1) CCF(LN,T2,2) CCF(LN,T3,3) CCF(LN,T4,4) CCF(LN,T5,5) \
1769 CCF(LN,T6,6) CCF(LN,T7,7) CCF(LN,T8,8) CCF(LN,T9,9) CCF(LN,TA,A) \
1770 CCF(LN,TB,B) CCF(LN,TC,C) CCF(LN,TD,D) CCF(LN,TE,E) _Icf(3,G,T0,UN,LN) \
1772 WCF(T1,A1,1) WCF(T2,A2,2) WCF(T3,A3,3) WCF(T4,A4,4) WCF(T5,A5,5) \
1773 WCF(T6,A6,6) WCF(T7,A7,7) WCF(T8,A8,8) WCF(T9,A9,9) WCF(TA,AA,A) \
1774 WCF(TB,AB,B) WCF(TC,AC,C) WCF(TD,AD,D) WCF(TE,AE,E) _(T0,_cfX)}

◆ PROTOCCALLSFFUN2

#define PROTOCCALLSFFUN2 (   T0,
  UN,
  LN,
  T1,
  T2 
)     PROTOCCALLSFFUN5 (T0,UN,LN,T1,T2,CF_0,CF_0,CF_0)

Definition at line 1736 of file cfortran.h.

◆ PROTOCCALLSFFUN3

#define PROTOCCALLSFFUN3 (   T0,
  UN,
  LN,
  T1,
  T2,
  T3 
)     PROTOCCALLSFFUN5 (T0,UN,LN,T1,T2,T3,CF_0,CF_0)

Definition at line 1738 of file cfortran.h.

◆ PROTOCCALLSFFUN4

#define PROTOCCALLSFFUN4 (   T0,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4 
)     PROTOCCALLSFFUN5 (T0,UN,LN,T1,T2,T3,T4,CF_0)

Definition at line 1740 of file cfortran.h.

◆ PROTOCCALLSFFUN5

#define PROTOCCALLSFFUN5 (   T0,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5 
)     PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0)

Definition at line 1742 of file cfortran.h.

◆ PROTOCCALLSFFUN6

#define PROTOCCALLSFFUN6 (   T0,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6 
)     PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0)

Definition at line 1744 of file cfortran.h.

◆ PROTOCCALLSFFUN7

#define PROTOCCALLSFFUN7 (   T0,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7 
)     PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0)

Definition at line 1746 of file cfortran.h.

◆ PROTOCCALLSFFUN8

#define PROTOCCALLSFFUN8 (   T0,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8 
)     PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0)

Definition at line 1748 of file cfortran.h.

◆ PROTOCCALLSFFUN9

#define PROTOCCALLSFFUN9 (   T0,
  UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9 
)     PROTOCCALLSFFUN10(T0,UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0)

Definition at line 1750 of file cfortran.h.

◆ PROTOCCALLSFSUB0

#define PROTOCCALLSFSUB0 (   UN,
  LN 
)    CFextern void FCALLSC_QUALIFIER CFC_(UN,LN)();

Definition at line 1035 of file cfortran.h.

◆ PROTOCCALLSFSUB1

#define PROTOCCALLSFSUB1 (   UN,
  LN,
  T1 
)     PROTOCCALLSFSUB14(UN,LN,T1,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)

Definition at line 969 of file cfortran.h.

◆ PROTOCCALLSFSUB10

#define PROTOCCALLSFSUB10 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA 
)     PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,CF_0,CF_0,CF_0,CF_0)

Definition at line 987 of file cfortran.h.

◆ PROTOCCALLSFSUB11

#define PROTOCCALLSFSUB11 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB 
)     PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,CF_0,CF_0,CF_0)

Definition at line 989 of file cfortran.h.

◆ PROTOCCALLSFSUB12

#define PROTOCCALLSFSUB12 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC 
)     PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,CF_0,CF_0)

Definition at line 991 of file cfortran.h.

◆ PROTOCCALLSFSUB13

#define PROTOCCALLSFSUB13 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD 
)     PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,CF_0)

Definition at line 993 of file cfortran.h.

◆ PROTOCCALLSFSUB14

#define PROTOCCALLSFSUB14 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE 
)     CFextern void FCALLSC_QUALIFIER CFC_(UN,LN)( CFARGT14(NCF,KCF,_Z,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE) );

Definition at line 1037 of file cfortran.h.

◆ PROTOCCALLSFSUB15

#define PROTOCCALLSFSUB15 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF 
)     PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,CF_0,CF_0,CF_0,CF_0,CF_0)

Definition at line 997 of file cfortran.h.

◆ PROTOCCALLSFSUB16

#define PROTOCCALLSFSUB16 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF,
  TG 
)     PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,CF_0,CF_0,CF_0,CF_0)

Definition at line 999 of file cfortran.h.

◆ PROTOCCALLSFSUB17

#define PROTOCCALLSFSUB17 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF,
  TG,
  TH 
)     PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,CF_0,CF_0,CF_0)

Definition at line 1001 of file cfortran.h.

◆ PROTOCCALLSFSUB18

#define PROTOCCALLSFSUB18 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF,
  TG,
  TH,
  TI 
)     PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,CF_0,CF_0)

Definition at line 1003 of file cfortran.h.

◆ PROTOCCALLSFSUB19

#define PROTOCCALLSFSUB19 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF,
  TG,
  TH,
  TI,
  TJ 
)     PROTOCCALLSFSUB20(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,CF_0)

Definition at line 1005 of file cfortran.h.

◆ PROTOCCALLSFSUB2

#define PROTOCCALLSFSUB2 (   UN,
  LN,
  T1,
  T2 
)     PROTOCCALLSFSUB14(UN,LN,T1,T2,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)

Definition at line 971 of file cfortran.h.

◆ PROTOCCALLSFSUB20

#define PROTOCCALLSFSUB20 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9,
  TA,
  TB,
  TC,
  TD,
  TE,
  TF,
  TG,
  TH,
  TI,
  TJ,
  TK 
)     CFextern void FCALLSC_QUALIFIER CFC_(UN,LN)( CFARGT20(NCF,KCF,T1,T2,T3,T4,T5,T6,T7,T8,T9,TA,TB,TC,TD,TE,TF,TG,TH,TI,TJ,TK) );

Definition at line 1039 of file cfortran.h.

◆ PROTOCCALLSFSUB3

#define PROTOCCALLSFSUB3 (   UN,
  LN,
  T1,
  T2,
  T3 
)     PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)

Definition at line 973 of file cfortran.h.

◆ PROTOCCALLSFSUB4

#define PROTOCCALLSFSUB4 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4 
)     PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)

Definition at line 975 of file cfortran.h.

◆ PROTOCCALLSFSUB5

#define PROTOCCALLSFSUB5 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5 
)     PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)

Definition at line 977 of file cfortran.h.

◆ PROTOCCALLSFSUB6

#define PROTOCCALLSFSUB6 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6 
)     PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)

Definition at line 979 of file cfortran.h.

◆ PROTOCCALLSFSUB7

#define PROTOCCALLSFSUB7 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7 
)     PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)

Definition at line 981 of file cfortran.h.

◆ PROTOCCALLSFSUB8

#define PROTOCCALLSFSUB8 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8 
)     PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,CF_0,CF_0,CF_0,CF_0,CF_0,CF_0)

Definition at line 983 of file cfortran.h.

◆ PROTOCCALLSFSUB9

#define PROTOCCALLSFSUB9 (   UN,
  LN,
  T1,
  T2,
  T3,
  T4,
  T5,
  T6,
  T7,
  T8,
  T9 
)     PROTOCCALLSFSUB14(UN,LN,T1,T2,T3,T4,T5,T6,T7,T8,T9,CF_0,CF_0,CF_0,CF_0,CF_0)

Definition at line 985 of file cfortran.h.

◆ PSHORT_cfAAP

#define PSHORT_cfAAP (   A,
  B 
)    &A

Definition at line 712 of file cfortran.h.

◆ PSHORT_cfCCC

#define PSHORT_cfCCC (   A,
  B 
)    A

Definition at line 1612 of file cfortran.h.

◆ PSHORT_cfINT

#define PSHORT_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PDOUBLE_cfINT(N,A,B,X,Y,Z)

Definition at line 1252 of file cfortran.h.

◆ PSHORT_cfPP

#define PSHORT_cfPP

Definition at line 1432 of file cfortran.h.

◆ PSHORT_cfSTR

#define PSHORT_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1548 of file cfortran.h.

◆ PSHORT_cfT

#define PSHORT_cfT (   M,
  I,
  A,
  B,
 
)    A

Definition at line 1903 of file cfortran.h.

◆ PSHORT_cfTYPE

#define PSHORT_cfTYPE   short

Definition at line 1228 of file cfortran.h.

◆ PSHORT_cfVP

#define PSHORT_cfVP (   A,
  B 
)    PINT_cfVP(A,B)

Definition at line 622 of file cfortran.h.

◆ PSTRING_cfA

#define PSTRING_cfA (   M,
  I,
  A,
  B 
)    PSTRING_cfC(M,I,A,B,sizeof(A))

Definition at line 682 of file cfortran.h.

◆ PSTRING_cfAA

#define PSTRING_cfAA (   T,
  A,
  B 
)    PSTRING_cfCC(T,A,B)

Definition at line 731 of file cfortran.h.

◆ PSTRING_cfB

#define PSTRING_cfB (   T,
  A 
)    (char *) A

Definition at line 1447 of file cfortran.h.

◆ PSTRING_cfC

#define PSTRING_cfC (   M,
  I,
  A,
  B,
  C 
)
Value:
(C==sizeof(char*)? B=strlen(A): \
(A[C-1]='\0',B=strlen(A),memset((A)+B,' ',C-B-1),B=C-1));

Definition at line 1579 of file cfortran.h.

1579 : \
1580 (A[C-1]='\0',B=strlen(A),memset((A)+B,' ',C-B-1),B=C-1));

◆ PSTRING_cfCC

#define PSTRING_cfCC (   T,
  A,
  B 
)    A

Definition at line 1645 of file cfortran.h.

◆ PSTRING_cfH

#define PSTRING_cfH (   S,
  U,
  B 
)    STRING_cfH(S,U,B)

Definition at line 1476 of file cfortran.h.

◆ PSTRING_cfINT

#define PSTRING_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PVOID_cfINT(N,A,B,X,Y,Z)

Definition at line 1314 of file cfortran.h.

◆ PSTRING_cfJ

#define PSTRING_cfJ (   B)    ,B

Definition at line 758 of file cfortran.h.

◆ PSTRING_cfKK

#define PSTRING_cfKK (   B)    STRING_cfKK(B)

Definition at line 774 of file cfortran.h.

◆ PSTRING_cfN

#define PSTRING_cfN (   T,
  A 
)    STRING_cfN(T,A) /* CRAY insists on arg.'s here. */

Definition at line 831 of file cfortran.h.

◆ PSTRING_cfQ

#define PSTRING_cfQ (   B)    char *B=NULL;

Definition at line 1814 of file cfortran.h.

◆ PSTRING_cfR

#define PSTRING_cfR (   A,
  B,
 
)    RRRRPSTR( A,B,D)

Definition at line 1961 of file cfortran.h.

◆ PSTRING_cfS

#define PSTRING_cfS (   M,
  I,
  A 
)    ,sizeof(A)

Definition at line 1461 of file cfortran.h.

◆ PSTRING_cfSEP

#define PSTRING_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1199 of file cfortran.h.

◆ PSTRING_cfSTR

#define PSTRING_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,PSTRING,A,B,C,D,E)

Definition at line 1550 of file cfortran.h.

◆ PSTRING_cfT

#define PSTRING_cfT (   M,
  I,
  A,
  B,
 
)    TTSTR( A,B,D)

Definition at line 1935 of file cfortran.h.

◆ PSTRING_cfU

#define PSTRING_cfU (   T,
  A 
)    char *A

Definition at line 1340 of file cfortran.h.

◆ PSTRING_cfV

#define PSTRING_cfV (   T,
  A,
  B,
  F 
)    int B;

Definition at line 668 of file cfortran.h.

◆ PSTRING_cfW

#define PSTRING_cfW (   A,
  B 
)    kill_trailing(A,' ');

Definition at line 786 of file cfortran.h.

◆ PSTRINGV_cfA

#define PSTRINGV_cfA (   M,
  I,
  A,
  B 
)     APATRINGV_cfA((char *)A,B,sizeof(A),firstindexlength(A),secondindexlength(A))

Definition at line 697 of file cfortran.h.

◆ PSTRINGV_cfAA

#define PSTRINGV_cfAA (   T,
  A,
  B 
)    STRINGV_cfAA(T,A,B)

Definition at line 741 of file cfortran.h.

◆ PSTRINGV_cfB

#define PSTRINGV_cfB (   T,
  A 
)    (char *) A

Definition at line 1448 of file cfortran.h.

◆ PSTRINGV_cfC

#define PSTRINGV_cfC (   M,
  I,
  A,
  B,
  C 
)     APATRINGV_cfA( A,B,(C/0xFFFF)*(C%0xFFFF),C/0xFFFF,C%0xFFFF)

Definition at line 1585 of file cfortran.h.

◆ PSTRINGV_cfCC

#define PSTRINGV_cfCC (   T,
  A,
  B 
)    B.fs

Definition at line 1646 of file cfortran.h.

◆ PSTRINGV_cfH

#define PSTRINGV_cfH (   S,
  U,
  B 
)    STRING_cfH(S,U,B)

Definition at line 1477 of file cfortran.h.

◆ PSTRINGV_cfINT

#define PSTRINGV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PVOID_cfINT(N,A,B,X,Y,Z)

Definition at line 1315 of file cfortran.h.

◆ PSTRINGV_cfJ

#define PSTRINGV_cfJ (   B)    STRING_cfJ(B)

Definition at line 760 of file cfortran.h.

◆ PSTRINGV_cfKK

#define PSTRINGV_cfKK (   B)    STRING_cfKK(B)

Definition at line 776 of file cfortran.h.

◆ PSTRINGV_cfN

#define PSTRINGV_cfN (   T,
  A 
)    STRINGV_cfN(T,A)

Definition at line 834 of file cfortran.h.

◆ PSTRINGV_cfQ

#define PSTRINGV_cfQ (   B)    STRINGV_cfQ(B)

Definition at line 1815 of file cfortran.h.

◆ PSTRINGV_cfR

#define PSTRINGV_cfR (   A,
  B,
 
)    RRRRPSTRV(A,B,D)

Definition at line 1962 of file cfortran.h.

◆ PSTRINGV_cfS

#define PSTRINGV_cfS (   M,
  I,
  A 
)    STRINGV_cfS(M,I,A)

Definition at line 1462 of file cfortran.h.

◆ PSTRINGV_cfSEP

#define PSTRINGV_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1200 of file cfortran.h.

◆ PSTRINGV_cfSTR

#define PSTRINGV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,PSTRINGV,A,B,C,D,E)

Definition at line 1552 of file cfortran.h.

◆ PSTRINGV_cfT

#define PSTRINGV_cfT (   M,
  I,
  A,
  B,
 
)    STRINGV_cfT(M,I,A,B,D)

Definition at line 1940 of file cfortran.h.

◆ PSTRINGV_cfU

#define PSTRINGV_cfU (   T,
  A 
)    char *A

Definition at line 1341 of file cfortran.h.

◆ PSTRINGV_cfV

#define PSTRINGV_cfV (   T,
  A,
  B,
  F 
)    struct{char *fs; unsigned int sizeofA,flen;}B;

Definition at line 669 of file cfortran.h.

◆ PSTRINGV_cfW

#define PSTRINGV_cfW (   A,
  B 
)
Value:
f2cstrv((char*)A,(char*)A,B.flen+1,B.sizeofA), B.flen+1,B.sizeofA,' ');

Definition at line 795 of file cfortran.h.

◆ PVOID_cfAA

#define PVOID_cfAA (   T,
  A,
  B 
)    (void *) A

Definition at line 724 of file cfortran.h.

◆ PVOID_cfB

#define PVOID_cfB (   T,
  A 
)    (void *) A

Definition at line 1449 of file cfortran.h.

◆ PVOID_cfCC

#define PVOID_cfCC (   T,
  A,
  B 
)    A

Definition at line 1624 of file cfortran.h.

◆ PVOID_cfINT

#define PVOID_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    _(CFARGS,N)(A,B,B,X,Y,Z,0)

Definition at line 1302 of file cfortran.h.

◆ PVOID_cfN

#define PVOID_cfN (   T,
  A 
)    void * A

Definition at line 813 of file cfortran.h.

◆ PVOID_cfSEP

#define PVOID_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1193 of file cfortran.h.

◆ PVOID_cfSTR

#define PVOID_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1555 of file cfortran.h.

◆ PVOID_cfT

#define PVOID_cfT (   M,
  I,
  A,
  B,
 
)    A

Definition at line 1904 of file cfortran.h.

◆ PVOID_cfU

#define PVOID_cfU (   T,
  A 
)    void *A

Definition at line 1335 of file cfortran.h.

◆ PVOID_cfV

#define PVOID_cfV (   T,
  A,
  B,
  F 
)

Definition at line 650 of file cfortran.h.

◆ PZTRINGV_cfA

#define PZTRINGV_cfA (   M,
  I,
  A,
  B 
)
Value:
APATRINGV_cfA( (char *)A,B, \
(_3(M,_ELEMS_,I))*(( _3(M,_ELEMLEN_,I))+1), \
(_3(M,_ELEMS_,I)),(_3(M,_ELEMLEN_,I))+1)
#define _3(A, B, C)
Definition cfortran.h:45
#define APATRINGV_cfA( A, B, sA, filA, silA)
Definition cfortran.h:692

Definition at line 702 of file cfortran.h.

◆ PZTRINGV_cfAA

#define PZTRINGV_cfAA (   T,
  A,
  B 
)    STRINGV_cfAA(T,A,B)

Definition at line 743 of file cfortran.h.

◆ PZTRINGV_cfB

#define PZTRINGV_cfB (   T,
  A 
)    (char *) A

Definition at line 1452 of file cfortran.h.

◆ PZTRINGV_cfC

#define PZTRINGV_cfC (   M,
  I,
  A,
  B,
  C 
)
Value:
APATRINGV_cfA( A,B, (_3(M,_ELEMS_,I))*((_3(M,_ELEMLEN_,I))+1), \
(_3(M,_ELEMS_,I)), (_3(M,_ELEMLEN_,I))+1 )

Definition at line 1590 of file cfortran.h.

◆ PZTRINGV_cfCC

#define PZTRINGV_cfCC (   T,
  A,
  B 
)    PSTRINGV_cfCC(T,A,B)

Definition at line 1650 of file cfortran.h.

◆ PZTRINGV_cfH

#define PZTRINGV_cfH (   S,
  U,
  B 
)

Definition at line 1481 of file cfortran.h.

◆ PZTRINGV_cfINT

#define PZTRINGV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PVOID_cfINT(N,A,B,X,Y,Z)

Definition at line 1319 of file cfortran.h.

◆ PZTRINGV_cfJ

#define PZTRINGV_cfJ (   B)    STRING_cfJ(B)

Definition at line 762 of file cfortran.h.

◆ PZTRINGV_cfKK

#define PZTRINGV_cfKK (   B)    STRING_cfKK(B)

Definition at line 778 of file cfortran.h.

◆ PZTRINGV_cfN

#define PZTRINGV_cfN (   T,
  A 
)    PSTRINGV_cfN(T,A)

Definition at line 836 of file cfortran.h.

◆ PZTRINGV_cfS

#define PZTRINGV_cfS (   M,
  I,
  A 
)

Definition at line 1464 of file cfortran.h.

◆ PZTRINGV_cfSEP

#define PZTRINGV_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1204 of file cfortran.h.

◆ PZTRINGV_cfSTR

#define PZTRINGV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,PZTRINGV,A,B,C,D,E)

Definition at line 1559 of file cfortran.h.

◆ PZTRINGV_cfU

#define PZTRINGV_cfU (   T,
  A 
)    char *A

Definition at line 1343 of file cfortran.h.

◆ PZTRINGV_cfV

#define PZTRINGV_cfV (   T,
  A,
  B,
  F 
)    PSTRINGV_cfV(T,A,B,F)

Definition at line 672 of file cfortran.h.

◆ PZTRINGV_cfW

#define PZTRINGV_cfW (   A,
  B 
)    PSTRINGV_cfW(A,B)

Definition at line 799 of file cfortran.h.

◆ QCF

#define QCF (   TN,
 
)    _(TN,_cfSTR)(1,Q,_(B,I), 0,0,0,0)

Definition at line 1808 of file cfortran.h.

◆ RCF

#define RCF (   TN,
 
)    _(TN,_cfSTR)(3,R,_(A,I),_(B,I),_(C,I),0,0)

Definition at line 1943 of file cfortran.h.

◆ ROUTINE_1

#define ROUTINE_1   ROUTINE_orig

Definition at line 1825 of file cfortran.h.

◆ ROUTINE_10

#define ROUTINE_10   ROUTINE_orig

Definition at line 1834 of file cfortran.h.

◆ ROUTINE_11

#define ROUTINE_11   ROUTINE_orig

Definition at line 1835 of file cfortran.h.

◆ ROUTINE_12

#define ROUTINE_12   ROUTINE_orig

Definition at line 1836 of file cfortran.h.

◆ ROUTINE_13

#define ROUTINE_13   ROUTINE_orig

Definition at line 1837 of file cfortran.h.

◆ ROUTINE_14

#define ROUTINE_14   ROUTINE_orig

Definition at line 1838 of file cfortran.h.

◆ ROUTINE_2

#define ROUTINE_2   ROUTINE_orig

Definition at line 1826 of file cfortran.h.

◆ ROUTINE_3

#define ROUTINE_3   ROUTINE_orig

Definition at line 1827 of file cfortran.h.

◆ ROUTINE_4

#define ROUTINE_4   ROUTINE_orig

Definition at line 1828 of file cfortran.h.

◆ ROUTINE_5

#define ROUTINE_5   ROUTINE_orig

Definition at line 1829 of file cfortran.h.

◆ ROUTINE_6

#define ROUTINE_6   ROUTINE_orig

Definition at line 1830 of file cfortran.h.

◆ ROUTINE_7

#define ROUTINE_7   ROUTINE_orig

Definition at line 1831 of file cfortran.h.

◆ ROUTINE_8

#define ROUTINE_8   ROUTINE_orig

Definition at line 1832 of file cfortran.h.

◆ ROUTINE_9

#define ROUTINE_9   ROUTINE_orig

Definition at line 1833 of file cfortran.h.

◆ ROUTINE_cfAA

#define ROUTINE_cfAA (   T,
  A,
  B 
)    (void(*)(CF_NULL_PROTO))A

Definition at line 728 of file cfortran.h.

◆ ROUTINE_cfB

#define ROUTINE_cfB (   T,
  A 
)    (void(*)(CF_NULL_PROTO))A

Definition at line 1450 of file cfortran.h.

◆ ROUTINE_cfCC

#define ROUTINE_cfCC (   T,
  A,
  B 
)    A

Definition at line 1628 of file cfortran.h.

◆ ROUTINE_cfINT

#define ROUTINE_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PVOID_cfINT(N,A,B,X,Y,Z)

Definition at line 1303 of file cfortran.h.

◆ ROUTINE_cfN

#define ROUTINE_cfN (   T,
  A 
)    void ( *A)(CF_NULL_PROTO)

Definition at line 817 of file cfortran.h.

◆ ROUTINE_cfSEP

#define ROUTINE_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1194 of file cfortran.h.

◆ ROUTINE_cfSTR

#define ROUTINE_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1556 of file cfortran.h.

◆ ROUTINE_cfT

#define ROUTINE_cfT (   M,
  I,
  A,
  B,
 
)    _(ROUTINE_,I) A

Definition at line 1908 of file cfortran.h.

◆ ROUTINE_cfU

#define ROUTINE_cfU (   T,
  A 
)    void (*A)(CF_NULL_PROTO)

Definition at line 1336 of file cfortran.h.

◆ ROUTINE_cfV

#define ROUTINE_cfV (   T,
  A,
  B,
  F 
)

Definition at line 654 of file cfortran.h.

◆ ROUTINE_orig

#define ROUTINE_orig   (void *)

Definition at line 1822 of file cfortran.h.

◆ RRRRPSTR

#define RRRRPSTR (   A,
  B,
 
)
Value:
if (B) memcpy(A,B, _cfMIN(strlen(B),D)), \
(D>strlen(B)?memset(A+strlen(B),' ', D-strlen(B)):0), free(B);
#define _cfMIN(A, B)
Definition cfortran.h:307

Definition at line 1950 of file cfortran.h.

1951 :0), free(B);

◆ RRRRPSTRV

#define RRRRPSTRV (   A,
  B,
 
)    c2fstrv(B,A,D+1,(D+1)*_(B,N)), free(B);

Definition at line 1952 of file cfortran.h.

◆ SCF

#define SCF (   TN,
  NAME,
  I,
  A 
)    _(TN,_cfSTR)(3,S,NAME,I,A,0,0)

Definition at line 1454 of file cfortran.h.

◆ secondindexlength

#define secondindexlength (   A)    (sizeof(A[0])==1 ? sizeof(A) : sizeof(A[0]) )

Definition at line 317 of file cfortran.h.

◆ SHORT_cfCCC

#define SHORT_cfCCC (   A,
  B 
)    &A

Definition at line 1605 of file cfortran.h.

◆ SHORT_cfE

#define SHORT_cfE   short A0;

Definition at line 1375 of file cfortran.h.

◆ SHORT_cfF

#define SHORT_cfF (   UN,
  LN 
)    SHORT_cfFZ(UN,LN)

Definition at line 2015 of file cfortran.h.

◆ SHORT_cfFZ

#define SHORT_cfFZ (   UN,
  LN 
)    short FCALLSC_QUALIFIER fcallsc(UN,LN)(

Definition at line 1973 of file cfortran.h.

◆ SHORT_cfI

#define SHORT_cfI   return A0;

Definition at line 2077 of file cfortran.h.

◆ SHORT_cfINT

#define SHORT_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLE_cfINT(N,A,B,X,Y,Z)

Definition at line 1245 of file cfortran.h.

◆ SHORT_cfPU

#define SHORT_cfPU (   A)    CFextern short FCALLSC_QUALIFIER A

Definition at line 1361 of file cfortran.h.

◆ SHORT_cfSTR

#define SHORT_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1492 of file cfortran.h.

◆ SHORT_cfT

#define SHORT_cfT (   M,
  I,
  A,
  B,
 
)    *A

Definition at line 1847 of file cfortran.h.

◆ SHORT_cfVCF

#define SHORT_cfVCF (   A,
  B 
)

Definition at line 637 of file cfortran.h.

◆ SHORT_cfX

#define SHORT_cfX   return A0;

Definition at line 1662 of file cfortran.h.

◆ SHORTV_cfINT

#define SHORTV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEV_cfINT(N,A,B,X,Y,Z)

Definition at line 1295 of file cfortran.h.

◆ SHORTV_cfSTR

#define SHORTV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1535 of file cfortran.h.

◆ SHORTV_cfT

#define SHORTV_cfT (   M,
  I,
  A,
  B,
 
)    A

Definition at line 1854 of file cfortran.h.

◆ SHORTVV_cfINT

#define SHORTVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1296 of file cfortran.h.

◆ SHORTVV_cfSTR

#define SHORTVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1536 of file cfortran.h.

◆ SHORTVV_cfT

#define SHORTVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1891 of file cfortran.h.

◆ SHORTVVV_cfINT

#define SHORTVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1297 of file cfortran.h.

◆ SHORTVVV_cfSTR

#define SHORTVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1537 of file cfortran.h.

◆ SHORTVVV_cfT

#define SHORTVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1892 of file cfortran.h.

◆ SHORTVVVV_cfINT

#define SHORTVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1298 of file cfortran.h.

◆ SHORTVVVV_cfSTR

#define SHORTVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1538 of file cfortran.h.

◆ SHORTVVVV_cfT

#define SHORTVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1893 of file cfortran.h.

◆ SHORTVVVVV_cfINT

#define SHORTVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1299 of file cfortran.h.

◆ SHORTVVVVV_cfSTR

#define SHORTVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1539 of file cfortran.h.

◆ SHORTVVVVV_cfT

#define SHORTVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1894 of file cfortran.h.

◆ SHORTVVVVVV_cfINT

#define SHORTVVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1300 of file cfortran.h.

◆ SHORTVVVVVV_cfSTR

#define SHORTVVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1540 of file cfortran.h.

◆ SHORTVVVVVV_cfT

#define SHORTVVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1895 of file cfortran.h.

◆ SHORTVVVVVVV_cfINT

#define SHORTVVVVVVV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z)

Definition at line 1301 of file cfortran.h.

◆ SHORTVVVVVVV_cfPP

#define SHORTVVVVVVV_cfPP

Definition at line 1426 of file cfortran.h.

◆ SHORTVVVVVVV_cfSTR

#define SHORTVVVVVVV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1541 of file cfortran.h.

◆ SHORTVVVVVVV_cfT

#define SHORTVVVVVVV_cfT (   M,
  I,
  A,
  B,
 
)    (void *)A

Definition at line 1896 of file cfortran.h.

◆ SHORTVVVVVVV_cfTYPE

#define SHORTVVVVVVV_cfTYPE   short

Definition at line 1221 of file cfortran.h.

◆ SIMPLE_cfCC

#define SIMPLE_cfCC (   T,
  A,
  B 
)    A

Definition at line 1630 of file cfortran.h.

◆ SIMPLE_cfINT

#define SIMPLE_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PVOID_cfINT(N,A,B,X,Y,Z)

Definition at line 1310 of file cfortran.h.

◆ SIMPLE_cfSEP

#define SIMPLE_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1195 of file cfortran.h.

◆ SIMPLE_cfSTR

#define SIMPLE_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1557 of file cfortran.h.

◆ SIMPLE_cfV

#define SIMPLE_cfV (   T,
  A,
  B,
  F 
)

Definition at line 656 of file cfortran.h.

◆ STRING_cfA

#define STRING_cfA (   M,
  I,
  A,
  B 
)    STRING_cfC(M,I,A,B,sizeof(A))

Definition at line 681 of file cfortran.h.

◆ STRING_cfAA

#define STRING_cfAA (   T,
  A,
  B 
)    STRING_cfCC(T,A,B)

Definition at line 730 of file cfortran.h.

◆ STRING_cfB

#define STRING_cfB (   T,
  A 
)    (char *) A

Definition at line 1445 of file cfortran.h.

◆ STRING_cfC

#define STRING_cfC (   M,
  I,
  A,
  B,
  C 
)
Value:
(B.clen=strlen(A), \
C==sizeof(char*)||C==(unsigned)(B.clen+1)?B.flen=B.clen: \
(memset((A)+B.clen,' ',C-B.clen-1),A[B.flen=C-1]='\0'));

Definition at line 1576 of file cfortran.h.

1577 : \
1578 (memset((A)+B.clen,' ',C-B.clen-1),A[B.flen=C-1]='\0'));

◆ STRING_cfCC

#define STRING_cfCC (   T,
  A,
  B 
)    A

Definition at line 1643 of file cfortran.h.

◆ STRING_cfE

#define STRING_cfE
Value:

Definition at line 1392 of file cfortran.h.

◆ STRING_cfF

#define STRING_cfF (   UN,
  LN 
)    STRING_cfFZ(UN,LN),

Definition at line 2017 of file cfortran.h.

◆ STRING_cfFF

#define STRING_cfFF   char *AS; unsigned D0;

Definition at line 2027 of file cfortran.h.

◆ STRING_cfFZ

#define STRING_cfFZ (   UN,
  LN 
)    void FCALLSC_QUALIFIER fcallsc(UN,LN)(char *AS, unsigned D0

Definition at line 1988 of file cfortran.h.

◆ STRING_cfG

#define STRING_cfG (   T,
  UN,
  LN 
)    STRING_cfGZ(T,UN,LN), /*, is only diff. from _cfG */

Definition at line 1419 of file cfortran.h.

◆ STRING_cfGZ

#define STRING_cfGZ (   T,
  UN,
  LN 
)    CFC_(UN,LN)( A0,MAX_LEN_FORTRAN_FUNCTION_STRING

Definition at line 1413 of file cfortran.h.

◆ STRING_cfH

#define STRING_cfH (   S,
  U,
  B 
)    _(A,S) _(U,_CF_SPECIAL) B

Definition at line 1474 of file cfortran.h.

◆ STRING_cfI

#define STRING_cfI   return ;

Definition at line 2078 of file cfortran.h.

◆ STRING_cfINT

#define STRING_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PVOID_cfINT(N,A,B,X,Y,Z)

Definition at line 1312 of file cfortran.h.

◆ STRING_cfJ

#define STRING_cfJ (   B)    ,B.flen

Definition at line 757 of file cfortran.h.

◆ STRING_cfK

#define STRING_cfK
Value:
memcpy(AS,A0, _cfMIN(D0,(A0==NULL?0:strlen(A0))) ); \
D0>(A0==NULL?0:strlen(A0))?memset(AS+(A0==NULL?0:strlen(A0)), \
' ', D0-(A0==NULL?0:strlen(A0))):0;

Definition at line 2052 of file cfortran.h.

2052 :strlen(A0))) ); \
2053 D0>(A0==NULL?0:strlen(A0))?memset(AS+(A0==NULL?0:strlen(A0)), \
2054 ' ', D0-(A0==NULL?0:strlen(A0))):0;

◆ STRING_cfKK

#define STRING_cfKK (   B)    , unsigned B

Definition at line 773 of file cfortran.h.

◆ STRING_cfL

#define STRING_cfL   A0=

Definition at line 2032 of file cfortran.h.

◆ STRING_cfN

#define STRING_cfN (   T,
  A 
)    char * A

Definition at line 827 of file cfortran.h.

◆ STRING_cfPU

#define STRING_cfPU (   A)    CFextern void FCALLSC_QUALIFIER A

Definition at line 1362 of file cfortran.h.

◆ STRING_cfQ

#define STRING_cfQ (   B)    char *B=NULL;

Definition at line 1813 of file cfortran.h.

◆ STRING_cfR

#define STRING_cfR (   A,
  B,
 
)    if (B) free(B);

Definition at line 1947 of file cfortran.h.

◆ STRING_cfS

#define STRING_cfS (   M,
  I,
  A 
)    ,sizeof(A)

Definition at line 1458 of file cfortran.h.

◆ STRING_cfSEP

#define STRING_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1197 of file cfortran.h.

◆ STRING_cfSTR

#define STRING_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,STRING,A,B,C,D,E)

Definition at line 1549 of file cfortran.h.

◆ STRING_cfT

#define STRING_cfT (   M,
  I,
  A,
  B,
 
)    TTTTSTR( A,B,D)

Definition at line 1933 of file cfortran.h.

◆ STRING_cfU

#define STRING_cfU (   T,
  A 
)    char *A /* via VOID and wrapper. */

Definition at line 1338 of file cfortran.h.

◆ STRING_cfUU

#define STRING_cfUU (   T,
  A 
)    char *A

Definition at line 1348 of file cfortran.h.

◆ STRING_cfV

#define STRING_cfV (   T,
  A,
  B,
  F 
)    struct {unsigned int clen, flen;} B;

Definition at line 666 of file cfortran.h.

◆ STRING_cfW

#define STRING_cfW (   A,
  B 
)    (A[B.clen]!='\0'?A[B.clen]='\0':0); /* A?="constnt" */

Definition at line 785 of file cfortran.h.

◆ STRING_cfX

#define STRING_cfX
Value:
return kill_trailing( \
static char * kill_trailing(char *s, char t)
Definition cfortran.h:446

Definition at line 1668 of file cfortran.h.

◆ STRINGV_cfA

#define STRINGV_cfA (   M,
  I,
  A,
  B 
)     AATRINGV_cfA((char *)A,B,sizeof(A),firstindexlength(A),secondindexlength(A))

Definition at line 695 of file cfortran.h.

◆ STRINGV_cfAA

#define STRINGV_cfAA (   T,
  A,
  B 
)    B.fs

Definition at line 738 of file cfortran.h.

◆ STRINGV_cfB

#define STRINGV_cfB (   T,
  A 
)    (char *) A

Definition at line 1446 of file cfortran.h.

◆ STRINGV_cfC

#define STRINGV_cfC (   M,
  I,
  A,
  B,
  C 
)     AATRINGV_cfA( A,B,(C/0xFFFF)*(C%0xFFFF),C/0xFFFF,C%0xFFFF)

Definition at line 1583 of file cfortran.h.

◆ STRINGV_cfCC

#define STRINGV_cfCC (   T,
  A,
  B 
)    B.fs

Definition at line 1644 of file cfortran.h.

◆ STRINGV_cfH

#define STRINGV_cfH (   S,
  U,
  B 
)    STRING_cfH(S,U,B)

Definition at line 1475 of file cfortran.h.

◆ STRINGV_cfINT

#define STRINGV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PVOID_cfINT(N,A,B,X,Y,Z)

Definition at line 1313 of file cfortran.h.

◆ STRINGV_cfJ

#define STRINGV_cfJ (   B)    STRING_cfJ(B)

Definition at line 759 of file cfortran.h.

◆ STRINGV_cfKK

#define STRINGV_cfKK (   B)    STRING_cfKK(B)

Definition at line 775 of file cfortran.h.

◆ STRINGV_cfN

#define STRINGV_cfN (   T,
  A 
)    char * A

Definition at line 828 of file cfortran.h.

◆ STRINGV_cfQ

#define STRINGV_cfQ (   B)    char *B; unsigned int _(B,N);

Definition at line 1812 of file cfortran.h.

◆ STRINGV_cfR

#define STRINGV_cfR (   A,
  B,
 
)    free(B);

Definition at line 1948 of file cfortran.h.

◆ STRINGV_cfS

#define STRINGV_cfS (   M,
  I,
  A 
)
Value:
,( (unsigned)0xFFFF*firstindexlength(A) \
#define firstindexlength(A)
Definition cfortran.h:316
#define secondindexlength(A)
Definition cfortran.h:317

Definition at line 1459 of file cfortran.h.

◆ STRINGV_cfSEP

#define STRINGV_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1198 of file cfortran.h.

◆ STRINGV_cfSTR

#define STRINGV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,STRINGV,A,B,C,D,E)

Definition at line 1551 of file cfortran.h.

◆ STRINGV_cfT

#define STRINGV_cfT (   M,
  I,
  A,
  B,
 
)    TTTTSTRV(A,B,D, num_elem(A,D,_3(M,_STRV_A,I)))

Definition at line 1934 of file cfortran.h.

◆ STRINGV_cfU

#define STRINGV_cfU (   T,
  A 
)    char *A

Definition at line 1339 of file cfortran.h.

◆ STRINGV_cfV

#define STRINGV_cfV (   T,
  A,
  B,
  F 
)    struct {char *s, *fs; unsigned flen;} B;

Definition at line 667 of file cfortran.h.

◆ STRINGV_cfW

#define STRINGV_cfW (   A,
  B 
)    free(B.s);

Definition at line 794 of file cfortran.h.

◆ TCF

#define TCF (   NAME,
  TN,
  I,
  M 
)    _SEP_(TN,M,COMMA) _(TN,_cfT)(NAME,I,_(A,I),_(B,I),_(C,I))

Definition at line 1840 of file cfortran.h.

◆ TERM_CHARS

#define TERM_CHARS (   A,
  B 
)    A,B

Definition at line 533 of file cfortran.h.

◆ TTSTR

#define TTSTR (   A,
  B,
 
)     ((B=(char*)malloc(D+1))[D]='\0', memcpy(B,A,D), kill_trailing(B,' '))

Definition at line 1913 of file cfortran.h.

◆ TTTTSTR

#define TTTTSTR (   A,
  B,
 
)
Value:
(!(D<4||A[0]||A[1]||A[2]||A[3]))?NULL: \
memchr(A,'\0',D) ?A : TTSTR(A,B,D)
#define TTSTR( A, B, D)
Definition cfortran.h:1913

Definition at line 1915 of file cfortran.h.

1915 : \
1916 memchr(A,'\0',D) ?A : TTSTR(A,B,D)

◆ TTTTSTRV

#define TTTTSTRV (   A,
  B,
  D,
  E 
)
Value:
(_(B,N)=E,B=(char*)malloc(_(B,N)*(D+1)), (void *) \
vkill_trailing(f2cstrv(A,B,D+1, _(B,N)*(D+1)), D+1,_(B,N)*(D+1),' '))

Definition at line 1917 of file cfortran.h.

◆ UCF

#define UCF (   TN,
  I,
  C 
)    _SEP_(TN,C,COMMA) _Icf(2,U,TN,_(A,I),0)

Definition at line 1323 of file cfortran.h.

◆ UUCF

#define UUCF (   TN,
  I,
  C 
)    _SEP_(TN,C,COMMA) _SEP_(TN,1,I)

Definition at line 1324 of file cfortran.h.

◆ UUUCF

#define UUUCF (   TN,
  I,
  C 
)    _SEP_(TN,C,COLON) _Icf(2,U,TN,_(A,I),0)

Definition at line 1325 of file cfortran.h.

◆ VCF

#define VCF (   TN,
 
)    _Icf4(4,V,TN,_(A,I),_(B,I),F)

Definition at line 639 of file cfortran.h.

◆ VCF_INT_F

#define VCF_INT_F (   T,
  A,
  B 
)    _(T,_cfVCF)(A,B)

Definition at line 625 of file cfortran.h.

◆ VCF_INT_S

#define VCF_INT_S (   T,
  A,
  B 
)    _(T,VVVVVVV_cfTYPE) B = A;

Definition at line 624 of file cfortran.h.

◆ VOID_cfE

#define VOID_cfE

Definition at line 1376 of file cfortran.h.

◆ VOID_cfF

#define VOID_cfF (   UN,
  LN 
)    VOID_cfFZ(UN,LN)

Definition at line 2016 of file cfortran.h.

◆ VOID_cfFF

#define VOID_cfFF

Definition at line 2020 of file cfortran.h.

◆ VOID_cfFZ

#define VOID_cfFZ (   UN,
  LN 
)    void FCALLSC_QUALIFIER fcallsc(UN,LN)(

Definition at line 1974 of file cfortran.h.

◆ VOID_cfG

#define VOID_cfG (   T,
  UN,
  LN 
)    VOID_cfGZ(T,UN,LN)

Definition at line 1418 of file cfortran.h.

◆ VOID_cfGZ

#define VOID_cfGZ (   T,
  UN,
  LN 
)    CFC_(UN,LN)(

Definition at line 1406 of file cfortran.h.

◆ VOID_cfI

#define VOID_cfI   return ;

Definition at line 2079 of file cfortran.h.

◆ VOID_cfINT

#define VOID_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PVOID_cfINT(N,A,B,X,Y,Z)

Definition at line 1311 of file cfortran.h.

◆ VOID_cfK

#define VOID_cfK

Definition at line 2036 of file cfortran.h.

◆ VOID_cfL

#define VOID_cfL

Definition at line 2033 of file cfortran.h.

◆ VOID_cfPU

#define VOID_cfPU (   A)    CFextern void FCALLSC_QUALIFIER A

Definition at line 1363 of file cfortran.h.

◆ VOID_cfSEP

#define VOID_cfSEP (   T,
  B 
)    INT_cfSEP(T,B) /* For FORTRAN calls C subr.s. */

Definition at line 1196 of file cfortran.h.

◆ VOID_cfSTR

#define VOID_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,DEFAULT,A,B,C,D,E)

Definition at line 1485 of file cfortran.h.

◆ VOID_cfU

#define VOID_cfU (   T,
  A 
)    void A /* Needed for C calls FORTRAN sub.s. */

Definition at line 1337 of file cfortran.h.

◆ VOID_cfUU

#define VOID_cfUU (   T,
  A 
)    /* Needed for FORTRAN calls C sub.s. */

Definition at line 1347 of file cfortran.h.

◆ VOID_cfX

#define VOID_cfX   return ;

Definition at line 1663 of file cfortran.h.

◆ VOIDP

#define VOIDP

Definition at line 240 of file cfortran.h.

◆ VVCF

#define VVCF (   TN,
  AI,
  BI 
)    _Icf4(4,V,TN,AI,BI,S)

Definition at line 640 of file cfortran.h.

◆ WCF

#define WCF (   TN,
  AN,
 
)    _(TN,_cfSTR)(2,W,AN,_(B,I), 0,0,0)

Definition at line 781 of file cfortran.h.

◆ ZTRINGV_ARGF

#define ZTRINGV_ARGF (   I)    _2(A,I)

Definition at line 602 of file cfortran.h.

◆ ZTRINGV_ARGFP

#define ZTRINGV_ARGFP (   I)    (*(_2(A,I))) /* Undocumented. For PINT, etc. */

Definition at line 601 of file cfortran.h.

◆ ZTRINGV_ARGS

#define ZTRINGV_ARGS (   I)    _2(B,I)

Definition at line 606 of file cfortran.h.

◆ ZTRINGV_cfA

#define ZTRINGV_cfA (   M,
  I,
  A,
  B 
)
Value:
AATRINGV_cfA( (char *)A,B, \
(_3(M,_ELEMS_,I))*(( _3(M,_ELEMLEN_,I))+1), \
(_3(M,_ELEMS_,I)),(_3(M,_ELEMLEN_,I))+1)
#define AATRINGV_cfA( A, B, sA, filA, silA)
Definition cfortran.h:690

Definition at line 699 of file cfortran.h.

◆ ZTRINGV_cfAA

#define ZTRINGV_cfAA (   T,
  A,
  B 
)    STRINGV_cfAA(T,A,B)

Definition at line 742 of file cfortran.h.

◆ ZTRINGV_cfB

#define ZTRINGV_cfB (   T,
  A 
)    (char *) A

Definition at line 1451 of file cfortran.h.

◆ ZTRINGV_cfC

#define ZTRINGV_cfC (   M,
  I,
  A,
  B,
  C 
)
Value:
AATRINGV_cfA( A,B, (_3(M,_ELEMS_,I))*((_3(M,_ELEMLEN_,I))+1), \
(_3(M,_ELEMS_,I)), (_3(M,_ELEMLEN_,I))+1 )

Definition at line 1587 of file cfortran.h.

◆ ZTRINGV_cfCC

#define ZTRINGV_cfCC (   T,
  A,
  B 
)    STRINGV_cfCC(T,A,B)

Definition at line 1649 of file cfortran.h.

◆ ZTRINGV_cfH

#define ZTRINGV_cfH (   S,
  U,
  B 
)

Definition at line 1480 of file cfortran.h.

◆ ZTRINGV_cfINT

#define ZTRINGV_cfINT (   N,
  A,
  B,
  X,
  Y,
  Z 
)    PVOID_cfINT(N,A,B,X,Y,Z)

Definition at line 1318 of file cfortran.h.

◆ ZTRINGV_cfJ

#define ZTRINGV_cfJ (   B)    STRING_cfJ(B)

Definition at line 761 of file cfortran.h.

◆ ZTRINGV_cfKK

#define ZTRINGV_cfKK (   B)    STRING_cfKK(B)

Definition at line 777 of file cfortran.h.

◆ ZTRINGV_cfN

#define ZTRINGV_cfN (   T,
  A 
)    STRINGV_cfN(T,A)

Definition at line 835 of file cfortran.h.

◆ ZTRINGV_cfS

#define ZTRINGV_cfS (   M,
  I,
  A 
)

Definition at line 1463 of file cfortran.h.

◆ ZTRINGV_cfSEP

#define ZTRINGV_cfSEP (   T,
  B 
)    INT_cfSEP(T,B)

Definition at line 1203 of file cfortran.h.

◆ ZTRINGV_cfSTR

#define ZTRINGV_cfSTR (   N,
  T,
  A,
  B,
  C,
  D,
  E 
)    _(CFARGS,N)(T,ZTRINGV,A,B,C,D,E)

Definition at line 1558 of file cfortran.h.

◆ ZTRINGV_cfU

#define ZTRINGV_cfU (   T,
  A 
)    char *A

Definition at line 1342 of file cfortran.h.

◆ ZTRINGV_cfV

#define ZTRINGV_cfV (   T,
  A,
  B,
  F 
)    STRINGV_cfV(T,A,B,F)

Definition at line 671 of file cfortran.h.

◆ ZTRINGV_cfW

#define ZTRINGV_cfW (   A,
  B 
)    STRINGV_cfW(A,B)

Definition at line 798 of file cfortran.h.

◆ ZTRINGV_NUM

#define ZTRINGV_NUM (   I)    I

Definition at line 600 of file cfortran.h.

Function Documentation

◆ c2fstrv()

static char * c2fstrv ( char cstr,
char fstr,
int  elem_len,
int  sizeofcstr 
)
static

Definition at line 398 of file cfortran.h.

406{
407 int i, j;
408/* elem_len includes \0 for C strings. Fortran strings don't have term. \0.
409 Useful size of string must be the same in both languages. */
410 for (i = 0; i < sizeofcstr / elem_len; i++) {
411 for (j = 1; j < elem_len && *cstr; j++)
412 *fstr++ = *cstr++;
413 cstr += 1 + elem_len - j;
414 for (; j < elem_len; j++)
415 *fstr++ = ' ';
416 } /* 95109 - Seems to be returning the original fstr. */
417 return fstr - sizeofcstr + sizeofcstr / elem_len;
418}
INT i
Definition mdump.cxx:32
INT j
Definition odbhist.cxx:40
Here is the call graph for this function:

◆ f2cstrv()

static char * f2cstrv ( char fstr,
char cstr,
int  elem_len,
int  sizeofcstr 
)
static

Definition at line 422 of file cfortran.h.

430{
431 int i, j;
432/* elem_len includes \0 for C strings. Fortran strings don't have term. \0.
433 Useful size of string must be the same in both languages. */
434 cstr += sizeofcstr;
436 for (i = 0; i < sizeofcstr / elem_len; i++) {
437 *--cstr = '\0';
438 for (j = 1; j < elem_len; j++)
439 *--cstr = *--fstr;
440 }
441 return cstr;
442}
Here is the call graph for this function:

◆ kill_trailing()

static char * kill_trailing ( char s,
char  t 
)
static

Definition at line 446 of file cfortran.h.

452{
453 char *e;
454 e = s + strlen(s);
455 if (e > s) { /* Need this to handle NULL string. */
456 while (e > s && *--e == t); /* Don't follow t's past beginning. */
457 e[*e == t ? 0 : 1] = '\0'; /* Handle s[0]=t correctly. */
458 }
459 return s;
460}
static double e(void)
Definition tinyexpr.c:136
Here is the call graph for this function:

◆ kill_trailingn()

static char * kill_trailingn ( char s,
char  t,
char e 
)
static

Definition at line 467 of file cfortran.h.

474{
475 if (e == s)
476 *e = '\0'; /* Kill the string makes sense here. */
477 else if (e > s) { /* Watch out for neg. length string. */
478 while (e > s && *--e == t); /* Don't follow t's past beginning. */
479 e[*e == t ? 0 : 1] = '\0'; /* Handle s[0]=t correctly. */
480 }
481 return s;
482}
Here is the call graph for this function:
Here is the caller graph for this function:

◆ num_elem()

static int num_elem ( char strv,
unsigned  elem_len,
int  term_char,
int  num_term 
)
static

Definition at line 535 of file cfortran.h.

547{
548 unsigned num, i;
550 return term_char;
551 if (num_term <= 0)
553 for (num = 0;; num++) {
554 for (i = 0; i < (unsigned) num_term && *strv == term_char; i++, strv++);
555 if (i == (unsigned) num_term)
556 break;
557 else
558 strv += elem_len - i;
559 }
560 return (int) num;
561}
#define _NUM_ELEMS
Definition cfortran.h:529
#define _NUM_ELEM_ARG
Definition cfortran.h:530
Here is the call graph for this function:

◆ vkill_trailing()

static char * vkill_trailing ( char cstr,
int  elem_len,
int  sizeofcstr,
char  t 
)
static

Definition at line 487 of file cfortran.h.

495{
496 int i;
497 for (i = 0; i < sizeofcstr / elem_len; i++) /* elem_len includes \0 for C strings. */
498 kill_trailingn(cstr + elem_len * i, t, cstr + elem_len * (i + 1) - 1);
499 return cstr;
500}
static char * kill_trailingn(char *s, char t, char *e)
Definition cfortran.h:467
Here is the call graph for this function: