dmd support for IDEs and the D tool chain

Denis Koroskin 2korden at gmail.com
Fri Oct 16 09:53:43 PDT 2009


On Fri, 16 Oct 2009 20:11:25 +0400, Leandro Lucarella <llucax at gmail.com>  
wrote:

> Ary Borenszweig, el 16 de octubre a las 14:20 me escribiste:
>> >I can't agree more. Everything you wrote is in my TODO list,
>> >starting with a compiler, which already compiles most of the
>> >druntime (and hopefully will compile it fully by the end of this
>> >week). I'll release it to public as soon as Brad creates a project
>> >page at dsource.
>>
>> Is it a port of DMD? Because I think the main problem with above is
>> that the front-end is not very good... I think it has a lot of
>> evolved code and starting from scratch might be a good idea.
>
> And the back-end is not free! You can't distributed and I don't think it
> can be ported.
>

I see no point in porting backend. It's still in C++ and easily accessed  
 from D:

extern (C++) {
	void obj_initfile(const(char)* filename, const(char)* csegname,  
const(char)* modname);
	Symbol* symbol_calloc(const(char)* id);
	type* type_fake(tym_t);
	dt_t** dtnzeros(dt_t** pdtend, targ_size_t size);
	void outdata(Symbol* s);
	dt_t ** dtnbytes(dt_t** pdtend, targ_size_t size, const(char)* ptr);
	type* type_alloc(tym_t ty);
	elem* el_ptr(Symbol*);
	elem* el_bin(uint, tym_t, elem*, elem*);
	// etc
}

(These functions could be then moved to a separate backend.dll so that  
they would be shared between DMD and D-DMD and then only backend.dll would  
need to be distributed)

Besides, Walter gave and explicit permission to Tango devs to distribute  
dmd (alongside with a backend), so I believe this issue can be sorted out.

Walter?



More information about the Digitalmars-d mailing list