On Sunday, 20 March 2016 at 00:03:16 UTC, Nicholas Wilson wrote:
On Saturday, 19 March 2016 at 19:37:38 UTC, Alex Parrill wrote:
On Saturday, 19 March 2016 at 12:57:18 UTC, Nicholas Wilson
On Saturday, 19 March 2016 at 01:12:08 UTC, Alex Parrill
Should be doable using appropriate version blocks.
The problem is that I'd have to define my own structs (Xlib
Display, Xlib Window, etc), which will be incompatible with
the ones defined in any bindings to those libraries.
You don't. Code in undefined versions need only be
not semantically valid. i.e. the types in versions not compiled
in need not
be declared nor defined.
will compile fine.
Yes, I know. The issue is, when compiling with the version, where
does xcb_connection_t come from? If I declare it myself, as
`struct xcb_connection_t;` in the version block, then that type
will be different than the xcb_connection_t declared in the XCB
bindings that the developer is likely using, and thus they will
be incompatible. If I import a xcb_connection_t from some
bindings, it ties d-vulkan to those bindings, which I'd rather