November 02, 2006
On Wed, 01 Nov 2006 14:33:17 -0500, Walter Bright <newshound@digitalmars.com> wrote:

> Don Clugston wrote:
>> Could you please copy & paste that into the "Function Calling Conventions" part of the ABI page on the spec? It's better than nothing.
>> And maybe add 'this pointer passed in EBX' (if that's true).
>
> I just uploaded a new http://www.digitalmars.com/d/abi.html with more complete information on the D calling convention.

Great, thanks!
November 14, 2006
Hi Thomas

Great, that you are on the way to bring reflection to work.

In the demo you call a c-function and a pascal-function. Is D equal to pascal calling conventions?

Can I use this to call D functions?
Is there a way, to call an object method?

Frank
November 14, 2006
Frank Benoit (keinfarbton) schrieb am 2006-11-14:
> In the demo you call a c-function and a pascal-function. Is D equal to pascal calling conventions?

No.

> Can I use this to call D functions?
> Is there a way, to call an object method?

Not yet. I'm currently rewriting to support C, D and C++.
(I forgot how limited C++'s templates and variadic arguments are ...)

Adding support for D's calling convention is going to be the
next step. Though keep in mind that there are 3 different D calling
conventions: GDC, DMD-Linux and DMD-Windows.

Thomas


November 14, 2006
Thomas Kuehne wrote:

> Is D's functions calling convention somewhere documented?
> 
> I've been tinkering with a reflection module for D.
> Gaining access to all dynamic and static symbols is
> currently possible as well as calling C functions
> (see below) but calling functions with D linkage isn't
> yet implemented:

I'm currently working on a preliminary ABI, plattform neutral ABI for D. Plattform neutral in the sense, that everything that is plattform related is expressed by reference to additional plattform specific structured. This ABI also differentiates between compile time, linkage time and runtime level, which is IMHO required to get reflection and introspection done in a elegant way. Along with that I'm also working on a fork of the GDC compiler and a custom set ot GNU binutils that follow that ABI. The ABI itself is binary format neutral, though I'm also working on a special version of the ELF format optimized for that ABI, which uses DWARF to store reflection and introspection information, instead of placing that in a additional .data section.

I hope to have a relase candidate in late December.

Wolfgang Draxinger
-- 
E-Mail address works, Jabber: hexarith@jabber.org, ICQ: 134682867

November 15, 2006
On Tue, 14 Nov 2006 05:27:57 -0800, Wolfgang Draxinger <wdraxinger@darkstargames.de> wrote:

> Thomas Kuehne wrote:
>
>> Is D's functions calling convention somewhere documented?
>>
>> I've been tinkering with a reflection module for D.
>> Gaining access to all dynamic and static symbols is
>> currently possible as well as calling C functions
>> (see below) but calling functions with D linkage isn't
>> yet implemented:
>
> I'm currently working on a preliminary ABI, plattform neutral ABI
> for D. Plattform neutral in the sense, that everything that is
> plattform related is expressed by reference to additional
> plattform specific structured. This ABI also differentiates
> between compile time, linkage time and runtime level, which is
> IMHO required to get reflection and introspection done in a
> elegant way. Along with that I'm also working on a fork of the
> GDC compiler and a custom set ot GNU binutils that follow that
> ABI. The ABI itself is binary format neutral, though I'm also
> working on a special version of the ELF format optimized for
> that ABI, which uses DWARF to store reflection and introspection
> information, instead of placing that in a additional .data
> section.
>
> I hope to have a relase candidate in late December.
>
> Wolfgang Draxinger



Wow!  I'm interseted!

-JJR
1 2
Next ›   Last »