mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-24 16:30:53 +08:00
Document the @compatibility_alias compiler directive (description from
Nicola Pero <n.pero@mi.flashnet.it>). From-SVN: r40125
This commit is contained in:
parent
25ad894fba
commit
2e226581cb
@ -21,6 +21,7 @@ comments about this document to Ovidiu Predescu
|
||||
* Type encoding::
|
||||
* Garbage Collection::
|
||||
* Constant string objects::
|
||||
* compatibility_alias::
|
||||
@end menu
|
||||
|
||||
@node Executing code before main, Type encoding, Top, Top
|
||||
@ -386,7 +387,7 @@ specifier to the string type description of the instance variable named
|
||||
as argument.
|
||||
|
||||
@c =========================================================================
|
||||
@node Constant string objects, , Garbage Collection, Top
|
||||
@node Constant string objects, compatibility_alias , Garbage Collection, Top
|
||||
@comment node-name, next, previous, up
|
||||
@section Constant string objects
|
||||
|
||||
@ -430,5 +431,34 @@ as argument to this option. It is possible to have multiple compilation
|
||||
units referring to different constant string classes, neither the
|
||||
compiler nor the linker impose any restrictions in doing this.
|
||||
|
||||
@bye
|
||||
@c =========================================================================
|
||||
@node compatibility_alias, , Constant string objects, Top
|
||||
@comment node-name, next, previous, up
|
||||
@section compatibility_alias
|
||||
|
||||
This is a feature of the Objective-C compiler rather than of the
|
||||
runtime, anyway since it is documented nowhere and its existence was
|
||||
forgotten, we are documenting it here.
|
||||
|
||||
The keyword @code{@@compatibility_alias} allows you to define a class name
|
||||
as equivalent to another class name. For example:
|
||||
|
||||
@example
|
||||
@@compatibility_alias WOApplication GSWApplication;
|
||||
@end example
|
||||
|
||||
tells the compiler that each time it encounters @code{WOApplication} as
|
||||
a class name, it should replace it with @code{GSWApplication} (that is,
|
||||
@code{WOApplication} is just an alias for @code{GSWApplication}).
|
||||
|
||||
There are some constraints on how this can be used -
|
||||
|
||||
@itemize @bullet
|
||||
|
||||
@item @code{WOApplication} (the alias) must not be an existing class;
|
||||
|
||||
@item @code{GSWApplication} (the real class) must be an existing class.
|
||||
|
||||
@end itemize
|
||||
|
||||
@bye
|
||||
|
Loading…
x
Reference in New Issue
Block a user