The __fortran and __pascal conventions specify argument passing that is compatible with Microsoft FORTRAN and Microsoft Pascal. The following list shows the implementation of this calling convention:
Element | Implementation |
Argument-passing order | Left to right |
Argument-passing convention | By value, unless a pointer or reference type is passed |
Stack-maintenance responsibility | Called function adjusts the stack |
Name-decoration convention | None |
Case-translation convention | Names translated to uppercase |
To declare a function as __fortran or __pascal, use a declaration of the form:
void __fortran regress( double series[],
double *slope,
double *intercept );
Note that, in the preceding declaration, the modifier __fortran modifies the name immediately to its right, regress. Functions declared using the __fortran or __pascal modifiers return values the same way as those declared using __cdecl.
Note:
The __fortran and __pascal modifiers are identical; the two keywords are supported for internal code documentation.
The __fortran and __pascal keywords are not supported in 32-bit compilations.¨