[Date Prev][Date Next][Thread Prev][Thread Next][Author Index][Date Index][Thread Index]

one more rule about using attributes



I figured out another rule that applies to the attributes:

the first attribute mentioned in a class should be either DEFERRED()
or CONCRETE().  This will be easy to enforce from the translator, but
those who are writing manual c++, or generating classes with macros
should be sure to follow this rule.  The penalty is occasional missing
vtables.

Since our work-around to force the production of vtables lives in the
CONCRETE() and DEFERRED() macros, and depends on being the first thing
in the class, one of these two must be the first attribute that has a
macro expansion.

Chris