melde mich mal spät am Abend, da ich einen Bug habe, der mich schon seit
Stunden belästigt hat. Erst jetzt bin ich mir sicher, dass es an PureBasic
und dessen Makros liegt.
Hier ein Beispiel, welches den Bug auslöst:
Code: Alles auswählen
Macro DoubleQuote
"
EndMacro
Macro DoubleUnderscore(Name)
"_"+DoubleQuote#Name#DoubleQuote+"_"
EndMacro
Debug DoubleUnderscore(bla) ;Muss "_bla_" ergeben, was auch funktioniert
;Doch nun kommt das komische:
Procedure CallBug(Name$)
Select Name$
Case DoubleUnderscore(a)
;...
Case DoubleUnderscore(b)
;...
Case DoubleUnderscore(c)
;...
Case DoubleUnderscore(d)
;...
Case DoubleUnderscore(e)
;...
Case DoubleUnderscore(f)
;...
EndSelect
EndProcedure
CallBug("_f_") ;Müsste das letzte "Case" ansteuern
;Doch das einzige was passiert, ist ein "Invalid memory access"!
funzt das Skript ohne Probleme. Es muss also wieder an den Makros
von PB liegen. Noch komischer ist, dass mir dieser Bug nur bei
Select und Case auftritt. Über der Prozedur nutze ich "DoubleUnderscore"
ohne Probleme.
Fragt mich aber bitte nicht, wozu ich solch ein Skript brauche. Es ist
nur ein Beispiel
Kann mal wieder jemand bitte diesen Bug bestätigen?
Gruß Josef
