Thursday, February 20, 2020

[fedora-arm] mozjs68 (Firefox ESR js engine) on armv7 fails since GCC10

Hi,

since GCC 10 introduction to Fedora, mozjs68[0] package started to fail[1] to compile on armv7.

Apparently, some data structures changed their size:
/builddir/build/BUILD/firefox-68.5.0/js/src/vm/Shape.h:807:58: error: static assertion failed: Things inheriting from gc::Cell must have a size that's a multiple of gc::CellAlignBytes
/builddir/build/BUILD/firefox-68.5.0/js/src/vm/JSScript.h:3408:59: error: static assertion failed: Size of LazyScript must be an integral multiple of js::gc::CellAlignBytes
 3408 | static_assert(sizeof(LazyScript) % js::gc::CellAlignBytes == 0,

Nuking all those static_assert checks [2] resulted in unusable binary, so that's unfortunately not a way forward. Bug has been reported to mozilla bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1612797

The last successful build was made in GCC 9 side tag.

I am currently busy with other more pressing issues, so I'll try to add more meaningful information to this thread later, if needed.

However, if anybody could take a look at it, I'll be grateful and send tons of virtual cookies!

Thanks a lot


No comments:

Post a Comment