[Mono-devel-list] Callling convention for interop call-backs
Karl Waclawek
karl at waclawek.net
Wed Jan 21 15:39:03 EST 2004
> > You have *my* vote.
> > Instead of just supporting cdecl, why not add an attribute that
> > allows to specify any of the calling conventions for delegates?
>
> We can certainly use MCS for experimentation to get this going.
>
> If there are people interested in this, please cook up a few approaches,
> we can try them out, and submit to ECMA.
Well, as far as implementation goes I can't say much - being new to C#
and not being a compiler writer. But for the hack described in several places,
I am using an attribute defined like this:
using System;
using System.Runtime.InteropServices;
[Serializable, AttributeUsage(AttributeTargets.Delegate)]
public sealed class CallConvAttribute: Attribute {
private CallingConvention kind;
public CallConvAttribute(CallingConvention kind) {
this.kind = kind;
}
public CallingConvention Kind {
get { return kind; }
}
}
And then insert the appropriate modopt line depending on what
"kind" of calling convention the attribute denotes.
Karl
More information about the Mono-devel-list
mailing list