On Wed, 24 Apr 2019 at 09:33, Andreas Schwab <sch...@linux-m68k.org> wrote: > > On Apr 24 2019, Iain Buclaw <ibuc...@gdcproject.org> wrote: > > > This patch adds arch64*-*-linux* as a supported libphobos target, > > something that has been passing the testsuite for a while now. > > > > Committed to trunk as r270524. > > That breaks -mabi=ilp32: > > /opt/gcc/gcc-20190424/libphobos/libdruntime/core/sys/posix/sys/stat.d:713:13: > error: static assert (104u == 128u) is false > 713 | static assert(stat_t.sizeof == 128); > | ^ > make[8]: *** [Makefile:2047: core/sys/posix/fcntl.lo] Error 1 >
Confirmed, I've sent fix to upstream and committed as r270541. Tested this on aarch64-linux-gnu, though as I don't have ilp32 libraries on my arm64 phone, I can only see that all modules compile down to object code. -- Iain ---
diff --git a/libphobos/libdruntime/MERGE b/libphobos/libdruntime/MERGE index 27dfc5fc1d9..9fe51fd5ae9 100644 --- a/libphobos/libdruntime/MERGE +++ b/libphobos/libdruntime/MERGE @@ -1,4 +1,4 @@ -b43203a134fb5e259ffc1711cc061c6e869b56f6 +513652173d6f02206be3ddaa2b6ed0b191ea4e3d The first line of this file holds the git revision number of the last merge done from the dlang/druntime repository. diff --git a/libphobos/libdruntime/core/sys/posix/sys/stat.d b/libphobos/libdruntime/core/sys/posix/sys/stat.d index ab1fcd7b164..963a241f076 100644 --- a/libphobos/libdruntime/core/sys/posix/sys/stat.d +++ b/libphobos/libdruntime/core/sys/posix/sys/stat.d @@ -709,10 +709,10 @@ version (CRuntime_Glibc) } int[2] __unused; } - static if (__USE_FILE_OFFSET64) + version (D_LP64) static assert(stat_t.sizeof == 128); else - static assert(stat_t.sizeof == 128); + static assert(stat_t.sizeof == 104); } else version (SPARC64) {