Next: , Previous: , Up: AT commands   [Contents][Index]


5.7 Forward referencing

5.7.1 ‘@[’: Mark as defined

This command marks the next (non-reserved) identifier that appears after the ‘@[’ as being defined in the current section. It is usually issued automatically; for example, ‘@a’ is equivalent to ‘@A@[’, ‘@d’ is equivalent to ‘@D@[’, and ‘@m’ is equivalent to ‘@M@[’.

If the appropriate style-file parameter mark_defined.??? is 1, this command causes any appearance of the identifier to be subscripted with a section number. For more information, see Subscript params.

The utility of this command can be seen from the characteristic construction

@ This is section 5.
@a @% Issues an implicit @[, which marks |test| as defined in section 5.
        subroutine test
        ...
        end

@ This is section 6.
@a
        program main
        call test // This will print as $|test|_5$.
        end

The ‘@[’ command should be distinguished from ‘@_’ (see AT_). The latter causes the index entry for the identifier to be underlined; the former possibly causes the identifier to be subscripted by a section number. One may wish to turn off the subscripts because they become too cluttered; however, the underlined index entries remain useful and unobtrusive.