Pyd: Wrapping too many functions in a class gives a compiler error

Kirk McDonald kirklin.mcdonald at gmail.com
Fri Jul 13 11:27:25 PDT 2007


Simen Haugen wrote:
> I'm now trying rev 118 and dmd 1.018.
> 
> If I use the ordinary wrap_class I get the "identifier too long" error.
> 
> If I use mixin _wrap_class!(...) outside of PydMain, I get an error when 
> wrapping the first class.
> The error is different based on what class I try to wrap first. With this 
> class:
> class NSDError : Error {
>     this() {
>         super("UNKNOWN");
>     }
> 
>     this(char[] msg) {
>         super(msg);
>     }
> }
> 
> I get:
> pynsd.d(40): Error: wrap_class!(NSDError,Init!(void(*)(char[] filename)) ) 
> has no effect
> 

Can you post your code? (Or, better, a minimum test case?) It should 
look something like:

mixin _wrap_class!(
     Foo,
     Init!(void function(char[]))
) A; // <-- some identifier

extern(C) void PydMain() {
     module_init();
     A.wrap_class(); // <-- that identifier
}

I have no idea where "filename" came from. :-)

-- 
Kirk McDonald
http://kirkmcdonald.blogspot.com
Pyd: Connecting D and Python
http://pyd.dsource.org



More information about the Digitalmars-d mailing list