Should C linkage (aka "extern (C)") be the default when using "betterC"?
    rempas 
    rempas at tutanota.com
       
    Sat Mar  5 13:31:30 UTC 2022
    
    
  
On Saturday, 5 March 2022 at 12:34:20 UTC, meta wrote:
> I misread rikki's comment
>
> Loosing function overloading is indeed problematic, so it's not 
> a so good idea..
You will lose function overloading anyway if you want to export 
you binding to the "C" way of mangling symbols (which is not 
mangling them at all). So if you want to have your library used 
from other languages without any more effort, you won't use 
function overloading or templates anyway!
 From the other hand, you can use D linkage in these symbols and 
then create an "interface" (or have someone else do that for you, 
lol!) with C linkage symbols that will call the overloaded 
functions or the template symbols. This is how I would do it!
The problem to my original post is that like Rikki said, it would 
be hard to make "extern(C)" the default without also modifying 
the module system.
    
    
More information about the Digitalmars-d
mailing list