Attribute and cross reference section

This section provides information about the entities that are used in the compilation unit.

It is present if the -qxref or -qattr compiler option is in effect. Depending on the options in effect, this section contains all or part of the following information about the entities that are used in the compilation unit:
  • Names of the entities
  • Attributes of the entities (if -qattr is in effect). Attribute information may include any or all of the following details:
    • The class of the name
    • The type
    • The relative address of the name
    • Alignment
    • Dimensions
    • For an array, whether it is allocatable
    • Whether it is a pointer, target, or integer pointer
    • Whether it is a parameter
    • Whether it is volatile
    • For a dummy argument, its intent, whether it is value, and whether it is optional
    • For a module entity, whether it is private, public, or protected
  • Coordinates to indicate where you have defined, referenced, or modified the entities. If you declared the entity, the coordinates are marked with a $. If you initialized the entity, the coordinates are marked with a *. If you both declared and initialized the entity at the same place, the coordinates are marked with a &. If the entity is set, the coordinates are marked with a @. If the entity is referenced, the coordinates are not marked.
Class is one of the following:
  • Automatic
  • BSS (uninitialized static internal)
  • Common
  • Common block
  • Construct name
  • Controlled (for an allocatable object)
  • Controlled automatic (for an automatic object)
  • Defined assignment
  • Defined operator
  • Derived type definition
  • Entry
  • External subprogram
  • Function
  • Generic name
  • Internal subprogram
  • Intrinsic
  • Module
  • Module function
  • Module subroutine
  • Namelist
  • Pointee
  • Private component
  • Program
  • Reference argument
  • Renames
  • Static
  • Fortran 2008 beginsSubmoduleFortran 2008 ends
  • Subroutine
  • Use associated
  • Value parameter

If you specify the full suboption with -qxref or -qattr, IBM® Open XL Fortran reports all entities in the compilation unit. If you do not specify this suboption, only the entities you actually use appear.