X11 XSynchronize() definition in D

andrea9940 no at mail.plz
Tue Aug 6 01:01:07 PDT 2013


Hi, I'm working with the X11 library available from 
https://github.com/D-Programming-Deimos/libX11
If I try to call XSynchronize(display, True) the compilation 
fails with "Error: function deimos.X11.Xlib.XSynchronize 
(_XDisplay*) is not callable using argument types (_XDisplay*, 
int)"

I am sure the arguments are correct (see http://goo.gl/8Hzn8s for 
example) so I think there is a conversion problem between the C 
and D definition of the function:

--- Xlib.h
extern int (*XSynchronize(
     Display*		/* display */,
     Bool		/* onoff */
))(
     Display*		/* display */
);

--- Xlib.d
extern int function(
     Display*            /* display */,
     Bool                /* onoff */
)XSynchronize(
     Display*            /* display */
);


Also I can't understand why the C version is not "extern int 
XSynchronize(Display*,
     Bool);" which would be the simplest definition.


More information about the Digitalmars-d-learn mailing list