.weak Pseudo-OP
Zweck
Deklariert ein Symbol als globales Symbol mit schwacher Bindung.
Syntax
.weak Name [, Sichtbarkeit ]
Beschreibung
Die Pseudooperation .weak gibt an, dass das Symbol Name ein globales Symbol mit schwacher Bindung ist, auf das andere Dateien zur Verbindungszeit verweisen können. Die Pseudooperation .extern, .globloder .comm kann auch verwendet werden, um ein globales Symbol zu erstellen.
Sobald die Pseudooperation .weak für ein Symbol verwendet wurde, wirkt sich die Verwendung der Pseudooperation .globl, .externoder .comm für dasselbe Symbol nicht auf die schwache Bindungseigenschaft des Symbols aus.
Der Linker ignoriert doppelte Definitionen für Symbole mit schwacher Bindung. Wenn ein globales Symbol in einer Datei nicht schwach ist und in anderen Dateien schwach ist, wird die globale Definition verwendet und die schwachen Definitionen werden ignoriert. Wenn alle Definitionen schwach sind, wird die erste schwache Definition verwendet.
Die Sichtbarkeit des schwachen Symbols kann mit dem Parameter Sichtbarkeit angegeben werden.
Parameter
| Element | Beschreibung |
|---|---|
| Name | Deklariert den Namen als globales Symbol mit schwacher Bindung. Name kann ein Qualnamesein. (Ein Qualname gibt einen Namen und eine StorageMappingClass für den Kontrollabschnitt an) |
| Sichtbarkeit | Gibt die Sichtbarkeit des Symbols an. Gültige Sichtbarkeitswerte sind exportiert, ausgeblendet, internund geschützt. Symbolsichtbarkeiten werden vom Linker verwendet. |
Beispiele
Das folgende Beispiel veranschaulicht die Verwendung der Pseudooperation .weak :
.weak foo[RW]
.csect data[RW]