Da ich länger keine kleinen Helfer programmierte, er innere ich mich nicht so ganz an alle Verhaltensmuster des Debuggers.
Ich habe ja im Bugforum gerade über das "Falten in Macros" geschrieben.
Was mir jetzt noch die Tage aufgefallen ist, wenn ich einen Syntaxfehler in einem großen (oder kleinen ) Makro habe (z.B. vergessene "Klammer zu") wird mir der Syntaxfehler immer an der STelle angezeigt, wo der Macroaufruf ist, nicht an der eigendlichen Fehlerstelle.
Die Fehlersuche ich dann eine reine Katastrophe.
Bei bestimmten Fehlern (leider zu selten, daher weiß ich gerade nicht welche das sind).
Kommt bei einem Fehler innerhalb eines Macros ein Extra Fehlerfenster auf, den Fehler innerhalb des Macros anzeigt.
Im Regelfall aber wird der Syntaxfehler beim Aufruf des Macros angezeigt, also die Zeile angezeigt.
Ist das schon immer so gewesen, oder nur bei der aktuellen PB Version?
Gruß Toshy
Leider konnte ich den Fehler noch NICHT nachvollziehbar machen.
Wenn ich das so verkürzt mache wie im folgenden Beispiel, so wird zwar der Fehler "in Zeile 31" diagnostiziert und angezeigt, aber es wird ein extra Fehlerfenster für das Macro geöffnet.
Code: Alles auswählen
Macro test
;{
If 1;
;{
If 1;
;{
If 1 ;
;{
If 1;
;{
If 1;
;{
If 1;
Debug "
EndIf;
;}
EndIf ;
;}
EndIf
;}
EndIf
;}
EndIf
;}
EndIf
;}
EndMacro
test
Nachtrag:
Was rede ich, kaum ist man fertig, da bekommt man es doch noch nachvollziehbar hin.
Fehlerzeile 36. Aber kein Macrofehlerfenster.
Wenn ich das jetzt mit dem "Faltungsfehler in Macros" vergleiche, kann es sein, das die IDE und der "Parser" oder wie man den Programmteil nennt, Macros nicht "korrekt" abarbeitet?
Macro _debug(DebugLevelB,DebugText)
EndMacro
Macro test
;{
If 1;
;{
If 1;
;{
If 1 ;
;{
If 1;
;{
If 1;
;{
If 1;
;Debug "
_Debug(5,"" ; 5 = normale Programminfos. was gerade geschied. eher als log gedacht)
EndIf ;
;}
EndIf ;
;}
EndIf
;}
EndIf
;}
EndIf
;}
EndIf
;}
EndMacro
test
Nachtrag:
"Faltungsfehler":
viewtopic.php?f=20&t=32291