![]() |
Label innerhalb des asm Kommando unbekannt!
Hallo zusammen,
ich habe folgende Funktionen geschrieben, um in einer DLL globale Variablen vor einem Synchronisierungsfehler zu schützen: (Dabei wird wird look_gvar vor und unlook_gvar nach dem Zugriff aufgerufen.)
Delphi-Quellcode:
Da "llabel:" aber eine Label-Definition ist, ist es natürlich undefiniert ...
...
var gvar_look: boolean; ... procedure look_gvar; begin asm llabel: {<-- Fehler: undefinierter Bezeichner: llabel} or gvar_look, $00 jnz llabel mov gvar_look, $FF end; end; procedure unlook_gvar; begin asm mov gvar_look, 0 end; end; ... Wer kann mir helfen? Bug |
Re: Label innerhalb des asm Kommando unbekannt!
Hallo Bug,
ob der Code sinnvoll ist, kann bzw. möchte ich nicht beurteilen. Die Fehlermeldung verschwindet, wenn du das Label auch deklarierst:
Delphi-Quellcode:
Gruß Hawkeye
procedure look_gvar;
label llabel; // <<-- hier begin asm llabel: or gvar_look, $00 jnz llabel mov gvar_look, $FF end; end; |
Re: Label innerhalb des asm Kommando unbekannt!
Danke für die schnelle Antwort,
Bug |
Re: Label innerhalb des asm Kommando unbekannt!
Lokale Labels sollten mit @@ beginnen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz