On Thursday, 14 May 2015 at 15:21:46 UTC, Johannes Pfau wrote:
^
The compiler was still building the xopEquals and xopCMP
functions.
These use TypeInfo internally but they're also only accessible
through
TypeInfo. Solution: We should not generate these functions with
-fno-rtti. Bonus points: You don't need _xopEquals in object.d
anymore.
The array error should also be fixed. I've updated the pull
request so you can give it another try.
I tested again with the latest changes. Removing the TypeInfo
faking reduced my runtime implementation to essentially nothing
_d_run_main and a few aliases. My demo builds fine and the
resulting binary went from 459k to 6k. The binary also executes
as expected, and with such a small binary, I can flash my
hardware is less than 500ms.
My test is not very thorough, though, as I intentionally use very
little of the language, but this feature is really a great
enabler for me, and I think we'll have what we need to make a
minimal runtime and toolchain package for C-like bare-metal
programming in D.
Thanks for the great work. If there's anything more I can do to
move this progress forward, please let me know.
Mike