Felder bei Faltung von Prozeduren

Hier werden, insbesondere in den Beta-Phasen, Bugmeldungen gepostet. Das offizielle BugForum ist allerdings hier.
BrunoF
Beiträge: 23
Registriert: 05.09.2004 22:29

Felder bei Faltung von Prozeduren

Beitrag von BrunoF »

Wenn innerhalb einer Prozedur das Schlüsselwort für das beenden von Faltungen steht, dann wird die Faltung der Prozedur an dieser Stelle beendet.
Das ist natürlich nur eine Kleinlichkeit und fällt nur dann auf, wenn man selbst einen Fehler macht ;-)
An dem Beispielcode kann man sehen was ich meine. (muss natürlich in die IDE kopiert werden)

Code: Alles auswählen

Procedure Prozedur1()
    
    
    
    ;}
    ;{ Faltung 1
    
    
    ;}
    ;{ Faltung 2
    
    
    
    
    ;}
EndProcedure

Procedure Prozedur2()
    
    
    
    ;{ Faltung 1
    
    
    ;}
    ;{ Faltung 2
    
    
    
    
    ;}
EndProcedure



Gruß Bruno
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7028
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Felder bei Faltung von Prozeduren

Beitrag von STARGÅTE »

Das ist in dem Sinne kein Bug, sonden einfach nur nicht programmiert worden.

Die IDE sucht nur nach Anfangs Keywords und End Keywords.

Genauso kannst du:

Code: Alles auswählen

Procedure OhJee()

EndMacro
falten oder :

Code: Alles auswählen

ForEach

Next
Wenn du nun also das Ende ";}" "zuerst" machst, wird natürlich der andere Anfang erst geschlossen.

Eine genaue überprüfung ob Anfang und ende übereinstimmen, kans nicht geben (oder nur sehr kompliziert)
da ja viele anfänge unterschiedliche Enden haben usw...
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8807
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Re: Felder bei Faltung von Prozeduren

Beitrag von NicTheQuick »

Aber was soll daran jetzt der Bug sein?
Benutzeravatar
Josh
Beiträge: 1028
Registriert: 04.08.2009 17:24

Re: Felder bei Faltung von Prozeduren

Beitrag von Josh »

schön wäre es, wenn die kennwörter für die faltungen nur am zeilenanfang berücksichtigt würden. ich habe z.b. das problem bei automatisch generierten interfaces, wo als parametername öfter mal Macro vorkommt.

Code: Alles auswählen

Interface Test
  Item1 (Macro.i)
EndInterface
BrunoF
Beiträge: 23
Registriert: 05.09.2004 22:29

Re: Felder bei Faltung von Prozeduren

Beitrag von BrunoF »

Ich war mir nicht sicher ob ich es überhaupt hier posten soll.
Bin eben das erste Mal drüber gestolpert und wollte darauf hinweisen.
Darüber ob es ein Bug ist oder ein Feature ist kann man streiten (will ich aber nicht :D )

Gruß Bruno
Benutzeravatar
Mok
BotHunter
Beiträge: 1484
Registriert: 26.12.2005 14:14
Computerausstattung: MSI GX780R
Intel Core i5-2410M
Nvidia GT 555M
Windows 7 Home Premium 64 bit
Wohnort:   

Re: Felder bei Faltung von Prozeduren

Beitrag von Mok »

BrunoF hat geschrieben:Darüber ob es ein Bug ist oder ein Feature ist kann man streiten (will ich aber nicht :D )
Ein Feature, das in einen Bug ausartet, wenn man End-Keywords falsch benutzt und Macros in Interfaces hat... also ist schon OK in diesem Forum.
Win 7 Home Premium 64 bit | PureBasic 5.20 - x86 und x86-64 | Firefox [aktuelle stable-Version hier einfügen]
"Jeder macht irgendwann mal Fehler, darum gibt's auch Bleistifte mit Radiergummi." --Carl
Benutzeravatar
Josh
Beiträge: 1028
Registriert: 04.08.2009 17:24

Re: Felder bei Faltung von Prozeduren

Beitrag von Josh »

Mok hat geschrieben:Ein Feature, das in einen Bug ausartet, wenn man End-Keywords falsch benutzt und Macros in Interfaces hat... also ist schon OK in diesem Forum.
nicht ganz richtig. es sind keine macros im interface, es ist lediglich das wort 'Macro' im interfacebefehl. dass die schlüsselwörter nur ausgewertet werden, wenn sie am zeilenanfang stehen, sollte eigentlich nicht so schwer zu verwirklichen sein.

aber ich seh das nicht als riesen problem, kann mit so kleinen fehlern auch gut leben ^^
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Felder bei Faltung von Prozeduren

Beitrag von ts-soft »

Josh hat geschrieben:nicht ganz richtig. es sind keine macros im interface, es ist lediglich das wort 'Macro' im interfacebefehl. dass die schlüsselwörter nur ausgewertet werden, wenn sie am zeilenanfang stehen, sollte eigentlich nicht so schwer zu verwirklichen sein.
Aber will das auch jeder? Ich will das nicht! Das jetzige verhalten ist standard und sollte so bleiben.
Macro hast Du selber als Faltwort definiert, kannste ja selber wieder entfernen.

Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Josh
Beiträge: 1028
Registriert: 04.08.2009 17:24

Re: Felder bei Faltung von Prozeduren

Beitrag von Josh »

ts-soft hat geschrieben:Macro hast Du selber als Faltwort definiert, kannste ja selber wieder entfernen.
nö, hab ich nicht. macro ist standardmäßig als faltwort definiert. aber ist ja egal, wie schon geschrieben, ist das nur ein kleines und unbedeutendes problem
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Felder bei Faltung von Prozeduren

Beitrag von ts-soft »

Verschiedene Kombination führen Unweigerlich zu falschen Faltungen, nicht nur Deine
Macros, Compilerdirektiven und Import usw. passiert dasselbe.
Dein Vorschlag enthält aber keine wirkliche Lösung, sondern lediglich eine weitere Einschränkung.

Notfalls kann man sich selber behelfen indem man ein unnützes ;} an das Ende einer Zeile schreibt,
dieses Workaround würde bei Erfüllung Deines Wunsches auch versagen :wink:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Gesperrt