Copyright (C) 2000-2012 |
GNU Info (g77-295.info)%VAL()The `%VAL()' Construct ---------------------- %VAL(ARG) The `%VAL()' construct specifies that an argument, ARG, is to be passed by value, instead of by reference or descriptor. `%VAL()' is restricted to actual arguments in invocations of external procedures. Use of `%VAL()' is recommended only for code that is accessing facilities outside of GNU Fortran, such as operating system or windowing facilities. It is best to constrain such uses to isolated portions of a program--portions the deal specifically and exclusively with low-level, system-dependent facilities. Such portions might well provide a portable interface for use by the program as a whole, but are themselves not portable, and should be thoroughly tested each time they are rebuilt using a new compiler or version of a compiler. *Implementation Note:* Currently, `g77' passes all arguments either by reference or by descriptor. Thus, use of `%VAL()' tends to be restricted to cases where the called procedure is written in a language other than Fortran that supports call-by-value semantics. (C is an example of such a language.) Note: Procedures (SUBROUTINE and FUNCTION), for detailed information on how this particular version of `g77' passes arguments to procedures. automatically generated by info2www version 1.2.2.9 |