https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118248
--- Comment #15 from Stefan Schulze Frielinghaus <stefansf at gcc dot gnu.org>
---
So my reproducer looks like
FROM ubuntu:plucky
RUN sed -i 's/^Types: deb$/Types: deb deb-src/' \
/etc/apt/sources.list.d/ubuntu.sources
RUN apt-get update \
&& apt-get -y upgrade \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y \
gdc \
libc6-dev-riscv64-cross \
binutils-multiarch \
binutils-riscv64-linux-gnu \
git \
&& apt build-dep -y gcc \
&& apt install -y libgmp3-dev libmpfr-dev libmpc-dev flex zlib1g-dev \
&& rm -rf /var/lib/apt/lists/*
RUN git clone --depth 1 https://gcc.gnu.org/git/gcc.git
RUN mkdir /build \
&& cd /build \
&& /gcc/configure \
--enable-languages=d \
--prefix=/usr \
--enable-shared \
--without-included-gettext \
--enable-threads=posix \
--enable-nls \
--with-sysroot=/ \
--enable-clocale=gnu \
--disable-libquadmath \
--disable-libquadmath-support \
--enable-default-pie \
--with-system-zlib \
--enable-libphobos-checking=all \
--without-target-system-zlib \
--disable-multilib \
--with-arch=rv64gc \
--with-abi=lp64d \
--enable-checking=all \
--build=s390x-linux-gnu \
--host=s390x-linux-gnu \
--target=riscv64-linux-gnu \
--includedir=/usr/riscv64-linux-gnu/include
RUN cd /build && make -j16
Which fails when entering /build/riscv64-linux-gnu/libphobos/libdruntime and
executing
/build/./gcc/gdc -B/build/./gcc/ -B/usr/riscv64-linux-gnu/bin/
-B/usr/riscv64-linux-gnu/lib/ -isystem /usr/riscv64-linux-gnu/include -isystem
/usr/riscv64-linux-gnu/sys-include -fversion=Shared -Wall -fno-release
-ffunction-sections -fdata-sections -O2 -g -fpreview=dip1000
-fpreview=fieldwise -fpreview=dtorfields -nostdinc -I
/gcc/libphobos/libdruntime -I . -c /gcc/libphobos/libdruntime/core/exception.d
-fPIC -fversion=Shared -o core/.libs/exception.o
The booting GDC version is: gdc (Ubuntu 14.2.0-16ubuntu1) 14.2.0
Since the cross compiled GDC is already broken, I'm not sure how to reproduce
this without s390x involvement.