Assertion failed - abhängig von global-staff-size

Begonnen von Arnold, Montag, 27. Mai 2019, 10:23

« vorheriges - nächstes »

harm6

Hallo Arnold,

falls Deine Tests zu einem Fix führen, soll ich dann nicht nochmal einen windows-installer herstellen?
Eventuell sogar öffentlich zum download bereit stellen, sodaß Interessierte user ihn testen können?

Gruß,
  Harm

Arnold

Zitatfalls Deine Tests zu einem Fix führen, soll ich dann nicht nochmal einen windows-installer herstellen?
Eventuell sogar öffentlich zum download bereit stellen, sodaß Interessierte user ihn testen können?

Hallo Harm,

eigentlich sind es zwei Issues - wie bei der 'Relativitätstheorie' den speziellen Fall zuerst:

Das genannte »'Assertion failed: ret <= cached_line_details_.size()' in function 'Page_breaking::min_page_count()' of file '.../page-breaking.cc'«-Problem ließe sich offenbar durch ändern der Zeile 1178 von
»&& cur_rod_height > cached_line_details_.back ().full_height ())«
in .../page-breaking.cc zu
»&& page_starter + 1 != cached_line_details_.size())«
beheben.

Aber Auslöser, daß dieser »ungünstige Code« zum Fehler führt, ist offenbar ein Setupproblem im MINGW des GUB, und dadurch können noch viele, viele andere (noch unentdeckte) Baustellen sich eröffnen - dies ist also der allgemein Fall:
MINGW des GUB (auch in meiner LILYDEV VM) unterstützt »_FPU_SETCW()« nicht mehr.
Und da weiß ich nicht mehr so richtig, was ich tun könnte.
  • MINGW in GUB »reparieren«?
  • Im GUB mit Kommandozeilenoption »-march=pentium4 -mfpmath=sse -msse2« compilieren? Achtung, »-fpc64« sollte laut mingw-Beschreibung auch helfen, funtionierte nicht in meiner Lilydev VM)
  • In allen Funktionen mit Rückgabe-Wert 'double' bzw. 'Real' durch ein »store to volatile parameter« ein Runden von 80-bit Fließkommazahl zu 64-bit Fließkommazahl erzwingen, bevor dann der (in der Variable gepeicherte) Wert zurückgegeben wird?
  • Die Vergleichsfunktionen in Typ Real duch eine eigene Funktion überschreiben, welche für die Rundung auf 64-bit Fließkommazahlen sorgt? So firm bin ich aber im C++ (noch) nicht! Und könnte uns dann noch SCHEME dazwischenfunken?

Dann werde ich wohl erst einmal eine Nachricht »an Issue 4943« schreiben (eventell in die LilyDev Mailing list).

Arnold

harm6

Hallo Arnold,

ich hab Dir ja eine ausführlichere PM geschickt.

Kurzfassung für alle:
Ich kann alles mögliche testen und evtl auch custom-Installer herstellen (kann natürlich jeder, der sich die Mühe macht GUB ans laufen zu kriegen), aber inhaltlich kann ich nicht helfen.
C++ ist nicht meine Welt.

Aber vielleicht jemand auf dieser Liste?

Gruß,
  Harm