Seite 1 von 1

Compilerfehler

Verfasst: Di, 09. Mär 2021 7:36
von Wolfgang Ciriack
Hallo,
warum ergibt

Code: Alles auswählen

@2.5, 1 DCBROWSE oBrowse.....
            EVAL {|o| o:UseVisualStyle := .F.}
einen Fehler: Invalid use of @ (pass by reference) operator ?
Schreibe ich jedoch

Code: Alles auswählen

EVAL {|o| o:UseVisualStyle:=.F.}
(ohne Leerzeichen vor und nach Zuweisung :=), ist es ok.

Re: Compilerfehler

Verfasst: Di, 09. Mär 2021 8:07
von Tom
Hallo, Wolfgang.

Die Ursache kannst Du erkennen, wenn Du beide Versionen mal mit der /P-Option kompilierst. Die Ergebnisse sind unterschiedlich - und das liegt daran, dass es bei DCBROWSE eine USEVISUALSTYLE-Option (und eine Option _USEVISUALSTYLE <lUseStyle>) gibt, die der Präprozessor abfeuert, wenn das USEVISUALSTYLE halbwegs freistehend vorkommt, denn der PP ist ja nichts weiter als ein Textprozessor. Offenbar reicht dem PP die Objektreferenz nicht zur Erkennung. So oder so, der PP ist die Ursache.

Re: Compilerfehler

Verfasst: Di, 09. Mär 2021 12:00
von Wolfgang Ciriack
Danke Tom, muss ich mir mal in einer ruhigen Minute ansehen.