Seite 1 von 2
Parenthesis '(' are not allowed...
Verfasst: 16.03.2009 02:08
von ahab
Ich glaube hierbei handelt es sich um einen bug. Kann das jemand bestätigen? Ich habe diese Fehlermeldung in 4.20 noch nicht bekommen...
http://tim.blessuren.de/pb_bug.png
imagetags rausgenommen - Kaeru fecit
Verfasst: 16.03.2009 02:16
von ts-soft
Das als Bild zu posten ist ja wohl
Naja, die letzte Klammer gehört wohl woanders hin
PS: Das Bild sprengt auch noch das Boardlayout, abgesehen davon das Du
uns damit Extraarbeit machst.
Verfasst: 16.03.2009 02:25
von Kaeru Gaman
hab das bild mal rausgenommen... aber mir nicht die Arbeit gemacht, die zeile abzutippen.
und die arbeit, zu überprüfen ob ts sich irrt mach ich mir jetz auch nich.
@ahab
das nächste mal bitte
1. den Problemcode als text in CodeTags posten
2. die Fehlermeldung abtippen
und
3. nicht gleich in Bugs posten sondern erst mal nachfragen was da los ist.
so ich lass es erstmal hier damit du's findest, aber morgen verschieb ichs ins "Anfänger"...
Verfasst: 16.03.2009 02:29
von ts-soft
Vor allem möglichst einen Testcode erstellen, wo man den Bug
nachvollziehen kann. Eigene Fehler fallen einem dann meist selber auf, weil
der größte Bug sitzt meist an der Tastatur.
Und
dies sollte man vorher auch mal lesen

Verfasst: 16.03.2009 02:57
von ts-soft
Code: Alles auswählen
Enumeration
#String_Datei
#String_SchluesselDatei
#String_TextSchluessel
#ButtonImage_Verschl
EndEnumeration
OpenWindow(0, #PB_Ignore, #PB_Ignore, 220, 150, "feel buggy", #PB_Window_SystemMenu)
StringGadget(#String_Datei, 5, 5, 200, 30, "was weiß ich")
StringGadget(#String_SchluesselDatei, 5, 40, 200, 30, "was weiß ich")
StringGadget(#String_TextSchluessel, 5, 75, 200, 30, "weiß immer noch nicht")
ButtonGadget(#ButtonImage_Verschl, 5, 110, 200, 30, "drück mich")
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow : Break
Case #PB_Event_Gadget
Select EventGadget()
Case #ButtonImage_Verschl
If GetGadgetText( #String_Datei ) And (GetGadgetText( #String_SchluesselDatei ) Or GetGadgetText( #String_TextSchluessel ))
EndIf
EndSelect
EndSelect
ForEver
Das mußte in PB wohl aufteilen in 2 Ifs.
Ob das jetzt ein Bug ist?
// Nachtrag:
Da ich jetzt nen Testsource habe
Unter 4.20 funzt das noch, kann ich bestätigen.
Verfasst: 16.03.2009 03:36
von ahab
sorry, dass ich das hier so schlampig gepostet habe. also nochmal meine frage. warum kann ich code dieser art nicht mehr kompilieren:
in pb 4.20 funktioniert es noch. @ts-soft: wenn das kein bug ist, warum dieses neue feature in pb 4.30?
Verfasst: 16.03.2009 03:52
von ts-soft
ahab hat geschrieben:in pb 4.20 funktioniert es noch. @ts-soft: wenn das kein bug ist, warum dieses neue feature in pb 4.30?
Du solltest alles vor
// Nachtrag: ignorieren, weils davor keine
Testmöglichkeiten gab, die hab ich mir selber schaffen müssen.
Hab ja nicht mal ne anständige OCR-Software installiert.
Sieht aus wie ein Bug, um es mal so auszudrücken, wobei diese Vergleiche
ohne Angabe womit sowieso nicht immer funktionieren. Nicht gut lesbar.
ele mele muh, raus bist du, ist wohl ein bug
Verfasst: 16.03.2009 04:01
von ahab
da hast du recht, mit
Code: Alles auswählen
If Str( 0 ) <> "" And ( Str( 1 ) <> "" Or Str( 2 ) <> "" )
...
EndIf
funktioniert es. aber ich fand die möglichkeit ohne vergleiche in pb eigentlich ganz schön und fast noch besser lesbar. aber das ist wohl geschmackssache.
Verfasst: 16.03.2009 04:12
von Kaeru Gaman
liegt das vielleicht an Unicode?
unabhängig davon:
das "Ergebnis" dieser Beobachtung ist ja wohl, dass die Rückgabe einer Stringfunktion
nicht mehr ohne weiteres als #True oder #False interpretiert werden kann.
da #True und #False eigentlich Numerische Werte sind, kann es sich hier
sogar um die Bereinigung einer vorherigen Ungenauigkeit handeln.
Also, eventuell handelt es sich um einen Bug in der 4.2, der jetzt behoben wurde.
ob das tatsächlich so ist, wird freak bestätigen oder verneinen können...
Verfasst: 16.03.2009 09:20
von Little John
Aber was hat das mit den Klammern zu tun?
Denn ohne "zu viele" Klammern gibt es auch ohne Vergleichsoperator keinen Fehler, auch mit PB 4.30 (unabhängig von Unicode):
Das ist schon komisch ...
Ein Fehler ist da allerdings auf jeden Fall drin, denn "are" ist Plural, daher muss es "Parenthes
es" heißen.
Gruß, Little John