Select-Bug mit Quads [PB V4.02]

Hier werden, insbesondere in den Beta-Phasen, Bugmeldungen gepostet. Das offizielle BugForum ist allerdings hier.
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8809
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

Select-Bug mit Quads [PB V4.02]

Beitrag von NicTheQuick »

Hat den schon jemand entdeckt?

Einfach mal für 'mc.q' Zahlen von 1 bis 12 einsetzen und schauen, was
rauskommt. Mit 'mc.l' funktioniert alles tadellos.

Code: Alles auswählen

Define mc.q

mc = q

Select mc
  Case 1, 10 : mc = 0
  Case 5 : mc = 1
  Case 8 : mc = 2
  Case 2, 3, 11 : mc = 3
  Case 6 : mc = 4
  Case 9, 12 : mc = 5
  Case 4, 7 : mc = 6
EndSelect

Debug mc
Gibt es den Bug auch noch in V4.10?
Benutzeravatar
Sicro
Beiträge: 963
Registriert: 11.08.2005 19:08
Kontaktdaten:

Beitrag von Sicro »

Bug besteht bei PB 4.10 Beta 3 immer noch:

Code: Alles auswählen

mc=1 -- Debug=3
mc=2 -- Debug=0
mc=3 -- Debug=0
mc=4 -- Debug=0
mc=5 -- Debug=0
mc=6 -- Debug=0
mc=7 -- Debug=0
mc=8 -- Debug=0
mc=9 -- Debug=0
mc=10 -- Debug=0
mc=11 -- Debug=0
mc=12 -- Debug=0
Mfg Sicro
Bild
Warum OpenSource eine Lizenz haben sollte :: PB-CodeArchiv-Rebirth :: Pleasant-Dark (Syntax-Farbschema) :: RegEx-Engine (kompiliert RegExes zu NFA/DFA)
Manjaro Xfce x64 (Hauptsystem) :: Windows 10 Home (VirtualBox) :: Neueste PureBasic-Version
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8809
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

Beitrag von NicTheQuick »

Wahnsinn! :o

Hat das vorher noch niemand gemerkt? :?
Benutzeravatar
Ligatur
Beiträge: 196
Registriert: 09.07.2006 00:41

Beitrag von Ligatur »

Hallo,

Gemerkt hat es wohl deshalb noch keiner, weil mir nicht viel dazu einfällt warum man die Variable, die man mit Select abfragt im Select - Block verändern sollte.

Gruß,
Ligatur
Benutzeravatar
PMV
Beiträge: 2765
Registriert: 29.08.2004 13:59
Wohnort: Baden-Württemberg

Beitrag von PMV »

Mal davon abgesehen, dass das einer der überflüssigen Kommentare
war, die man hier immer mal wieder gerne auf Bugmeldungen kommt, so
ist dass auch der fall, wenn sich die Variablen unterscheiden.

PB V4.02

Code: Alles auswählen

Define mc.q 

ml.q = 5 

Select ml 
  Case 1, 10 : mc = 0 
  Case 5 : mc = 1 
  Case 8 : mc = 2 
  Case 2, 3, 11 : mc = 3 
  Case 6 : mc = 4 
  Case 9, 12 : mc = 5 
  Case 4, 7 : mc = 6 
EndSelect 

Debug mc
Debugger hat geschrieben:0
MFG PMV
alte Projekte:
TSE, CWL, Chatsystem, GameMaker, AI-Game DLL, Fileparser, usw. -.-
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

ich bin nicht sicher, ob ich das schon mal im englischen bug-forum gelesen hab... kommt mir fast so vor...

scheint sowas ähnliches zu sein wie das For-problem... da gabs doch auch mit anderen typen als Long probleme....
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
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

Beitrag von ts-soft »

Kaeru Gaman hat geschrieben:ich bin nicht sicher, ob ich das schon mal im englischen bug-forum gelesen hab... kommt mir fast so vor...
http://www.purebasic.fr/english/viewtop ... 822#205822
Warum dort ASM genutzt wird ist mir nicht so klar, sollte man vielleicht
hierhin verweisen.
Kaeru Gaman hat geschrieben: scheint sowas ähnliches zu sein wie das For-problem... da gabs doch auch mit anderen typen als Long probleme....
Das For nur long unterstützt ist eine andere Sache und kein Bug, lediglich
eine Einschränkung. Aber in einem Case Statement sollte Quad funktionieren.
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
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

> Aber in einem Case Statement sollte Quad funktionieren.

dann ist das ein noch übergebliebener Bug, von den vielen Hi-DWord Problemen, die die Quad-Einführung hatte....

> sollte man vielleicht hierhin verweisen.

oder Nic soll sein Beispiel dort posten...
könnte ja sein, dass Fred das mit reinem PB eingänglicher ist...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
michel51
Beiträge: 84
Registriert: 01.11.2005 20:00
Wohnort: Dornhan-Weiden

Re: Select-Bug mit Quads [PB V4.02]

Beitrag von michel51 »

NicTheQuick hat geschrieben: Einfach mal für 'mc.q' Zahlen von 1 bis 12 einsetzen und schauen, was
rauskommt.
Gibt es den Bug auch noch in V4.10?
Wenn das so richtig ist (erweiterter Code):

Code: Alles auswählen

Define mc.q
For q = 1 To 12
mc = q

   Select mc
     Case 1, 10 : mc = 0
     Case 5 : mc = 1
     Case 8 : mc = 2
     Case 2, 3, 11 : mc = 3
     Case 6 : mc = 4
     Case 9, 12 : mc = 5
     Case 4, 7 : mc = 6
   EndSelect
   
   Debug "q: "+Str(q) + "  mc: "+Str(mc)
Next
dann ist das ergebnis so, wie es seine soll:

Code: Alles auswählen

q: 1  mc: 0
q: 2  mc: 3
q: 3  mc: 3
q: 4  mc: 6
q: 5  mc: 1
q: 6  mc: 4
q: 7  mc: 6
q: 8  mc: 2
q: 9  mc: 5
q: 10  mc: 0
q: 11  mc: 3
q: 12  mc: 5
auf dem Mac :mrgreen:
michel51

Mac OS X Snow Leopard (10.6.8 ) Intel
PureBasic V 5.11(X64), V 5.21(x64)

Zum Lernen ist niemand zu alt.
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

Beitrag von ts-soft »

@michel51
Dein Beispiel hat 2 Haken :wink:
NcikTheQuick meinte bestimmt die Windowsversion. Ist zwar schön das es
auf dem Mac funktioniert, aber der Testcode sagt nichts auch, da For : Next
nur Long unterstützt (aus Geschwindigkeitsgründen vermute ich mal)

Also andere Schleife nehmen, z.B. While Wend und nochmal testen, damit wir
Wissen obs unter Mac wirklich geht.

Dann kaufen wir alle uns eben schnell nen Mac :mrgreen:
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
Antworten