<p dir="ltr">On 19 Oct 2015 10:50 pm, "Vladimir Panteleev via Digitalmars-d" <<a href="mailto:digitalmars-d@puremagic.com">digitalmars-d@puremagic.com</a>> wrote:<br>
><br>
> On Sunday, 18 October 2015 at 07:56:02 UTC, Iain Buclaw wrote:<br>
>><br>
>> On 18 Oct 2015 9:45 am, "Vladimir Panteleev via Digitalmars-d" < <a href="mailto:digitalmars-d@puremagic.com">digitalmars-d@puremagic.com</a>> wrote:<br>
>>><br>
>>><br>
>>> On Sunday, 18 October 2015 at 07:37:55 UTC, Iain Buclaw wrote:<br>
>>>><br>
>>>><br>
>>>> Essentially, the reason D has not been ported to X has nothing to do<br>
>><br>
>> with lack of compiler support.  A compiler can always be built to target X, and if that wasn't enough, there are many ready built packages available that target X.<br>
>>>><br>
>>>><br>
>>>> It is now your job as porters to fix up druntime to allow a library to<br>
>><br>
>> be built by these compilers.<br>
>>><br>
>>><br>
>>><br>
>>> That's not very useful. LDC and GDC still include Phobos and Druntime.<br>
>>><br>
>><br>
>> It is infinitely more useful than having no compiler at all to test porting changes.<br>
><br>
><br>
> That's not what I meant. Aside from the compiler, LDC and GDC include the runtime, standard library, probably documentation etc. They come as a complete package.<br>
><br>
>>> You're essentially saying that once LDC gets Android/iOS support, GDC<br>
>><br>
>> will automatically get it as well with no effort required from you?<br>
>>><br>
>>><br>
>><br>
>> In it's runtime? Correct - assuming no one invents any new predefined version conditions in the process. :-)<br>
><br>
><br>
> No, not just the runtime. Surely the runtime contains some compiler/linker/toolchain-specific things... intrinsics, linker scripts, section names, predefined versions, assembler syntax... some of these might be platform/architecture-independent but surely not all?<br>
></p>
<p dir="ltr">As a compiler (and only a frontend language at that) I care very little about any of that.  Apart from predefined versions which are exposed to the language user code, making the rest work is Someone Else's Problem™</p>
<p dir="ltr">Iain.</p>