FPC-Bug (?): FloatToStrF ffGeneral

Für Fehler in Lazarus, um diese von anderen verifizieren zu lassen.
Antworten
Euklid
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 10:38
OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
Wohnort: Hessen
Kontaktdaten:

FPC-Bug (?): FloatToStrF ffGeneral

Beitrag von Euklid »

Hallo zusammen,

ich nehme an, einen FPC-Bug gefunden zu haben und würde den gerne reporten. Zuvor wollte ich mich bei Euch absichern, ob es sich dabei wirklich auch um einen Bug handelt:

Folgender Code.

Code: Alles auswählen

var ext:extended;
begin
  Decimalseparator:=',';     //eigentlich irrelevant
  ext:=StrToFloat(Edit1.Text);    //Wandelt String in Extended um.
  Form1.Caption:=FloatToStrF(ext,ffGeneral,4,0);     //Wandelt den Inhalt von Ext wieder in einen String um.
end;


Folgendes Resultat erwarte ich:

Code: Alles auswählen

Eingabe # Ausgabe
12,345678 # 12,34
123,45678 # 123,4
1234,5678 # 1234
12345,678 # 1,235E4
123456,78 # 1,235E5


Folgendes Resultat erhalte ich:

Code: Alles auswählen

Eingabe # Ausgabe
12,345678 # 12,34
123,45678 # 123,4
1234,5678 # 1234,5679     <--- Bug?
12345,678 # 1,235E4
123456,78 # 1,235E5


Die dritte Zeile springt förmlich ins Auge. Was haltet Ihr davon?

Ich benutze den FPC 2.2.4 in Lazarus 0.9.28-0. Verwendet jemand zufällig einen neueren FPC, bei dem das Problem möglicherweise schon behoben ist?
Im Bug-Tracker habe ich bisher nichts gefunden...

Viele Grüße, Euklid

ErnstVolker
Beiträge: 336
Registriert: Di 17. Feb 2009, 10:44
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: FPC-Bug (?): FloatToStrF ffGeneral

Beitrag von ErnstVolker »

Hallo Euklid,

das ist bei mir genauso. Wenn ich 1234,5678 eingebe, kommt genau 1234,5678 heraus. Rundet er bei Dir auf 9?
Sofern die "9" ein Tippfehler ist, und tatsächlich "8" bei Dir steht, ist es wie bei mir.

Ich hatte mir vor einiger Zeit Lazarus v0.9.29 mit fpc 2.4.1 runtergeladen und installiert.

Bei mir kommt allerdings die Meldung eines Debugger-Fehlers. Compiliert wird, aber aus der IDE heraus nicht ausgeführt.

Ich hoffe mal behilflich gewesen zu sein.

Gruß

Volker

Euklid
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 10:38
OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
Wohnort: Hessen
Kontaktdaten:

Re: FPC-Bug (?): FloatToStrF ffGeneral

Beitrag von Euklid »

Hallo,

danke für Deine Rückmeldung!
Ich habe daraufhin (mit meinen spärlichen Englisch-Kenntnissen) einen Bugreport erstellt, der durch den folgenden Link erreicht werden kann:

http://bugs.freepascal.org/view.php?id=16188

ErnstVolker hat geschrieben:das ist bei mir genauso. Wenn ich 1234,5678 eingebe, kommt genau 1234,5678 heraus. Rundet er bei Dir auf 9?


oh - hier handelt es sich um einen Übertragungsfehler meinerseits.


Viele Grüße, Euklid

Antworten