Compilerfehler

Alle Fragen um die Programmierung, die sich sonst nicht kategorisieren lassen. Von Makro bis Codeblock, von IF bis ENDIF

Moderator: Moderatoren

Antworten
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2932
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Compilerfehler

Beitrag 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.
Viele Grüße
Wolfgang
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: Compilerfehler

Beitrag 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.
Herzlich,
Tom
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2932
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Re: Compilerfehler

Beitrag von Wolfgang Ciriack »

Danke Tom, muss ich mir mal in einer ruhigen Minute ansehen.
Viele Grüße
Wolfgang
Antworten