www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - GDC and GCC. Merging 4.9 but cannot understand something

reply "Larry" <deco33 hotmail.fr> writes:
Hello,

I read somewhere that gcd and gcc will be merged:
http://forum.dlang.org/thread/kyoredrrscclqziyaesp forum.dlang.org?page=1

But I cannot understand how different languages can use the same 
compiler.

D is not far from c/c++ but it has its own hacks, right ?

Are gdc devs developping D as close as c/c++ as possible ?

I cannot understand how it will work.

If someone could enlighten me on the logical and what to expect, 
please, tell me.

Many thanks,

See you,

Larry
Aug 01 2013
next sibling parent Russel Winder <russel winder.org.uk> writes:
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, 2013-08-01 at 10:12 +0200, Larry wrote:
 Hello,
=20
 I read somewhere that gcd and gcc will be merged:
 http://forum.dlang.org/thread/kyoredrrscclqziyaesp forum.dlang.org?page=

=20
 But I cannot understand how different languages can use the same=20
 compiler.

GCC is structured as front ends and backends. Different language front ends are possible, so C, C++, D, Go all have fronts ends as part of GCC. The backends determine what machine code is generated, so Intel, ARM, etc. GCC is thus a compiler framework. one of the componenets is gcc the C compiler one is g++ the C++ compiler on is gccgo for Go and gdc for D.
 D is not far from c/c++ but it has its own hacks, right ?

D is a long, long way from C++ thankfully!
 Are gdc devs developping D as close as c/c++ as possible ?

No.
 I cannot understand how it will work.

Hopefully the above is illuminating.
 If someone could enlighten me on the logical and what to expect,=20
 please, tell me.
=20
 Many thanks,
=20
 See you,
=20
 Larry

--=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
Aug 01 2013
prev sibling next sibling parent "Olivier Pisano" <olivier.pisano laposte.net> writes:
Currently, GCC (Gnu Compiler Collection) already handles C, C++, 
Objective-C, Java, Fortran, Ada and Go.

This is done by dividing compilers in 2 : a front end component, 
which translates a source language (such as C or D) to an 
intermediate format, and a back end component, which takes stuff 
generated by the front end and creates a binary. All these 
languages have separate front ends, but share a common back end.

GDC reuses the GCC back end but is not an official GCC-related 
project. You don't get GDC when you download GCC. They are 
separate. When GCC devs make decision, they don't have to take D 
into account. Making things official should increase the 
visibility of D and its popularity.
Aug 01 2013
prev sibling parent "Larry" <deco33 hotmail.fr> writes:
Thank you !

Yes it is illuminating :)

So to sum up : when D devs say "We will merge with gcc" I should 
understand -> "We will bring our own interface to gcc, so that 
people installing gcc install D frontend as well".

The current main work is to adapt the D framework (gdc alone) to 
gcc to make it appliable with gcc rules.

Yes it is definitely clear it will help the D language.
At least, on debian for those using Sid (I will next week :) )

I get it right ?

Many many thanks to all of you guys, you rock taking your time 
explaining such things to a noob :)

See you,

Larry
Aug 01 2013