(j3.2006) Suggestion for Fortran 201x: Adding support for ignoring the TKR of the actual argument

Tobias Burnus burnus
Thu Feb 28 17:49:54 EST 2013


Several compilers support some option to allow for the Fortran 
equivalent to C's "void *buffer" using a directive such as:

   !DEC$ ATTRIBUTES NO_ARG_CHECK :: buf
   !$PRAGMA IGNORE_TKR buf
   !DIR$ IGNORE_TKR buf
   !IBM* IGNORE_TKR buf

There is unfortunately no way to do this in standard Fortran. The 
closest are:

* TYPE(*), DIMENSION(*) - which doesn't allow for scalars but only 
arrays and array elements
* TYPE(*), DIMENSION(..) - which not only passes the address of the data 
but the full array descriptor

Thus, something like dimension(**) could be useful, which works like 
dimension(*) but also accepts scalars.

Tobias



More information about the J3 mailing list