<digit-char> ::= "0" | <nonzero-digit-char>
-<nonzero-digit-char> ::= "1" | "2" $| \cdots |$ "9"
+<nonzero-digit-char> ::= "1" | "2" $| \ldots |$ "9"
\end{grammar}
The precise definition of @<alpha-char> is left to the function
<octal-integer> ::= "0" @["o"|"O"@] @<octal-digit-char>^+
-<octal-digit-char> ::= "0" | "1" $| \cdots |$ "7"
+<octal-digit-char> ::= "0" | "1" $| \ldots |$ "7"
<hex-integer> ::= "0" @("x"|"X"@) @<hex-digit-char>^+
A @<module> is the top-level syntactic item. A module consists of a sequence
of definitions.
-[FIXME]
+\fixme{describe syntax; expand}
Properties:
\begin{description}
\item[@"module_class"] A symbol naming the Lisp class to use to
<abstract-declarator> ::= <declarator>$[\epsilon, \mbox{@<argument-list>}]$
-<argument-declarator> ::= <declarator>$[\mbox{@<identifier> @! $\epsilon$}]$
-
<argument-declarator> ::=
<declarator>$[\mbox{@<identifier> @! $\epsilon$}, \mbox{@<argument-list>}]$
\item[@"initarg"] An identifier naming an initialization argument which can
be used to provide a value for the slot. See
\xref{sec:concepts.lifecycle.birth} for the details.
+\item[@"initarg_class"] A symbol naming the Lisp class to use to represent
+ the initarg. Only permitted if @"initarg" is also set.
\end{description}
An @<initializer>, if present, is treated as if a separate
<slot-initializer> ::= <dotted-name> @["=" <initializer>@]
-<initializer> :: <c-fragment>
+<initializer> ::= <c-fragment>
\end{grammar}
An @<initializer-item> provides an initial value for one or more slots. If
in the effective method. The default is @|sod__val|. Only permitted if
the method return type (see @"methty" below) is not @|void|.
\item[@"methty"] A C type, which is the return type for direct methods of
- this message.
+ this message. The default is the return type of the message.
\item[@"decls"] A code fragment containing declarations to be inserted at the
head of the effective method body. The default is to insert nothing.
\item[@"before"] A code fragment containing initialization to be performed at