On 30.01.2012 15:43, Lukasz Sokol wrote:
On 30/01/2012 11:25, Sven Barth wrote:

I wouldn't say that there is no plan for C++ support as some code for
this already exists in the compiler. While it's true that different
C++ compilers are incompatible to each other and that also G++ likes
to change its formats now and then, the basic memory layout in G++ is
rather stable. The biggest problems is getting this supported at all,
interfacing with the C++ Std library and things like virtual methods,
etc.

Regards, Sven

In layman's terms : what is the 'support level' required for this to
even /start/ working at all(even if not perfect at first) and what is considered
'100% supported' ? So that people who /know/ things (not me I'm afraid)
can tinker it to make it better ?

I don't know what you want to get at, but what currently works can be seen in the following test files:

http://svn.freepascal.org/cgi-bin/viewvc.cgi/trunk/tests/test/cg/tcppcl1.pp?revision=16684&view=markup
http://svn.freepascal.org/cgi-bin/viewvc.cgi/trunk/tests/test/cg/tcppcl2.pp?revision=16684&view=markup

The corresponding C++ files are

http://svn.freepascal.org/cgi-bin/viewvc.cgi/trunk/tests/test/cg/obj/cpptcl1.cpp?revision=15239&view=markup
http://svn.freepascal.org/cgi-bin/viewvc.cgi/trunk/tests/test/cg/obj/cpptcl2.cpp?revision=15239&view=markup

Basically this means that name mangling works and calling static methods of C++ classes. That's it currently. I had planned to extend the support a bit (you'll see my name in one of the commit messages), but I got sidetracked with other projects like NativeNT port, helper types and generics (not to mention my non-FPC-related projects).

Regards,
Sven
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to