Hi Rainer, > On 16 Mar 2022, at 15:55, Rainer Orth <r...@cebitec.uni-bielefeld.de> wrote: > >>> I've omitted the Darwin-specific stuff so far documented in PRs d/103577 >>> and d/103578: >>> >>> * needs --enable-libphobos >>> * top of gcc-11 branch only >>> * backport of -static-libphobos patch >>> * Darwin/i386 doesn't work at all >> >> — hopefully we will not need to add that — >> >> The actual problem is known (FWIW there is also some wrong code generated for >> x86_64, we just happen to link it to something harmless instead of failing >> to link). > > I see. One issue I see during x86_64-darwin testing (10.7 only?) is > that the forkgc2 test hangs and has to be killed manually.
yes, there are known issues with GC and threading - but those do not break bootstrap since the compiler is single-threaded. >> - I remain hopeful that a solution for 11.x can be found before gcc-12 >> branches, >> since without m32 support it is hard for me to fit D into regular Darwin >> testing (at >> present D is effectively untested on Darwin since the change to require a D >> bootstrap) >> .. at one stage, D did work on m32 Darwin. > > I suspected that the 32-bit issue might be due to several stdint types > being wrong, which was just fixed on master. At least the issue seemed > similar to PR d/104738. I'm building a 64-bit trunk gdc as we speak in > order to try that as a bootstrap compiler for a 32-bit build. The issue on 11.x is related to code that tries to synthesize section-start symbols, it causes a link fail on m32 - which is a bootstrap breaker. .. if that has been fixed for m32 codegenon master then, yes - presumably we could build an x86_64 compiler and use that “-m32” to make an i686 bootstrap. Iain.