Node:ATa, Next:ATB_, Previous:ATA_, Up:AT commands
@a
: Begin code part of unnamed section, and mark@a
begins the code part of an unnamed section (just as does
@A
), and in addition marks the next unreserved identifier it
finds as defined in this section. Precisely,
@a
==@A@[
Originally, FWEB did not contain the @A
command, so when
the functionality of automatically marking the next unreserved
identifier (see AT[) was added, it was natural to add it to @a
. A
reasonable style of coding is to always use @a
if you don't know
any better; if you sometime run into trouble, you can then change
selected @a
s to @A
s. For example, it is appropriate to
use @a
if one codes one function per section. E.g.,
@c @ @a int subrtn() {}
Here the @a
marks subrtn
as defined in this section; if
that identifier is used elsewhere, it will be subscripted with the
section number. (To turn this feature off, use -f
; see -f.)
However, if a section contains an arbitrary code fragment, the code part should
probably begin with @A
. E.g.,
@c @ @A x = y;
If one had used @a
here, the x
would have been marked as
defined here, which is not what one wants.