Bounty for -minimal compiler flag

inout inout at gmail.com
Mon Feb 17 12:40:19 PST 2014


On Monday, 17 February 2014 at 06:40:54 UTC, Paulo Pinto wrote:
> On Sunday, 16 February 2014 at 23:40:58 UTC, 1100110 wrote:
>> On 2/16/14, 10:18, Elie Morisse wrote:
>>
>>> IMHO an approach that would not involve making a binary 
>>> choice between
>>> "full D" and "minimal D" is to add an option to make the 
>>> linker strip
>>> druntime and Phobos' shared libraries (or any shared library, 
>>> and it's
>>> not specific to D btw) to the "lowest common denominator" 
>>> required by a
>>> bunch of libraries and applications. Wouldn't that fulfill 
>>> one of the
>>> two goals -nodruntime is trying to achieve as far as I 
>>> understand
>>> (saving memory)?
>>>
>>> And regarding the other goal, to help porting D to other 
>>> platforms a
>>> stub druntime would be cleaner than a hackish compiler flag 
>>> that
>>> requires many changes to DMD.
>>
>> No.  Any library compiled with -nogc will be 100% usable from 
>> a program compiled without it.  Same goes for -noexceptions, 
>> etc.
>>
>> This *is* a lowest common denominator.  And as such, the 
>> lowest common denominator is fully usable from code outside 
>> the subset.
>>
>> All these do is error on whatever feature they are disabling.
>
> However I doubt the other way around will work.
>
> Linking all those nice D libraries developed with standard D 
> into minimal D.
>
> But what do I know, I always enable everything in C++.
>
> --
> Paulo

Note that you can disable rtti/exceptions etc in C++ (and in fact
we do that in all the companies that I have ever worked for since
around 2005). The feature is there because it's very useful.

This discussion is all about adding similar capabilities to D.


More information about the Digitalmars-d-announce mailing list