Totalview® for HPC User Guide : PART II Debugging Tools and Tasks : Chapter 9 Examining and Editing Data and Program Elements : Displaying Fortran Types : Debugging Fortran 90 Modules
Debugging Fortran 90 Modules
Fortran 90 lets you place functions, subroutines, and variables inside modules. You can then include these modules elsewhere by using a USE command. When you do this, the names in the module become available in the using compilation unit, unless you either exclude them with a USE ONLY statement or rename them. This means that you don’t need to explicitly qualify the name of a module function or variable from the Fortran source code.
When debugging this kind of information, you need to know the location of the function being called. Consequently, TotalView uses the following syntax when it displays a function contained in a module:
modulename`functionname
You can also use this syntax in the File > Debug New Program and View > Lookup Variable commands.
Fortran 90 also lets you create a contained function that is only visible in the scope of its parent and siblings. There can be many contained functions in a program, all using the same name. If the compiler gave TotalView the function name for a nested function, TotalView displays it using the following syntax:
parentfunction()`containedfunction
CLI: dprint module_name‘variable_name