December 11, 2017
The automatic tests for a PR failed for a target that I could not test myself: 32-bit build on Darwin_64_32.


https://auto-tester.puremagic.com/show-run.ghtml?projectid=1&runid=2940199&dataid=20802787&isPull=true

Testing attach_detach
timelimit -t 10 ./generated/osx/debug/32/attach_detach
attach_detach(32762,0xb0103000) malloc: *** error for object 0x10000000: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
make[2]: *** [generated/osx/debug/32/attach_detach.done] Error 134
make[1]: *** [test/thread/.run] Error 2
make: *** [unittest-debug] Error 2

How can I reproduce the issue perhaps on my Ubuntu-based 64-bit laptop? I'm hoping that the problem will be obvious if I can build a 32-bit target and "set a breakpoint in malloc_error_break to debug".

I tried to build a 32-bit dmd on my system but failed with dependency issues. Is the following right way?

$ MODEL=32 make -f posix.mak -j8 AUTO_BOOTSTRAP=1
[...]
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/5/libstdc++.so when searching for -lstdc++
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/5/libstdc++.a when searching for -lstdc++
/usr/bin/ld: cannot find -lstdc++
collect2: error: ld returned 1 exit status

Ali
December 12, 2017
I would go with some VM and install 32bit system on it.

Dne 12. 12. 2017 8:55 dop. napsal uživatel "Ali Çehreli via Digitalmars-d-learn" <digitalmars-d-learn@puremagic.com>:

> The automatic tests for a PR failed for a target that I could not test myself: 32-bit build on Darwin_64_32.
>
>
> https://auto-tester.puremagic.com/show-run.ghtml?projectid=1 &runid=2940199&dataid=20802787&isPull=true
>
> Testing attach_detach
> timelimit -t 10 ./generated/osx/debug/32/attach_detach
> attach_detach(32762,0xb0103000) malloc: *** error for object 0x10000000:
> pointer being freed was not allocated
> *** set a breakpoint in malloc_error_break to debug
> make[2]: *** [generated/osx/debug/32/attach_detach.done] Error 134
> make[1]: *** [test/thread/.run] Error 2
> make: *** [unittest-debug] Error 2
>
> How can I reproduce the issue perhaps on my Ubuntu-based 64-bit laptop? I'm hoping that the problem will be obvious if I can build a 32-bit target and "set a breakpoint in malloc_error_break to debug".
>
> I tried to build a 32-bit dmd on my system but failed with dependency issues. Is the following right way?
>
> $ MODEL=32 make -f posix.mak -j8 AUTO_BOOTSTRAP=1
> [...]
> /usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/5/libstdc++.so
> when searching for -lstdc++
> /usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/5/libstdc++.a
> when searching for -lstdc++
> /usr/bin/ld: cannot find -lstdc++
> collect2: error: ld returned 1 exit status
>
> Ali
>