DIP 45 - approval discussion

Benjamin Thaut code at benjamin-thaut.de
Fri Nov 15 07:31:45 PST 2013


Am 15/11/2013 08:27, schrieb Walter Bright:
> On 11/14/2013 3:37 AM, Benjamin Thaut wrote:
>> Am 14.11.2013 11:28, schrieb Walter Bright:
>>> On 11/12/2013 2:23 PM, Martin Nowak wrote:
>>>
>>> One possibility is modules listed on the command line are regarded as
>>> export==dllexport, and other modules as export==dllimport.
>>>
>>> This of course means that functions may wind up going through the
>>> dllimport indirection even for calling functions in the same dll, but it
>>> should work.
>>
>> That doesns't work for the case where a dll "A" uses a dll "B".
>> In that case export has to mean "dllexport" for all modules of A but
>> "dllimport"
>> for all modules of B.
>
> I don't follow. If you're compiling A, you're specifying A modules on
> the command line, and those will regard the B modules as dllimport.
>

Ok now I understand what you suggest. So basically you want to do the 
exact same as DIP 45 just giving the compiler parameter a different name.

But you still didn't give a solution for the problem that the compiler 
does not know which modules are part of a shared library, which are part 
of a static library and which are part of the exeuctable. And please 
also consider single file compilation.

Kind Regards
Benjamin Thaut


More information about the Digitalmars-d mailing list