dpp
dpp copied to clipboard
Directly include C headers in D source code
For compatibilities sake I just took dmd's implementation and did the bare minimum to make it work. There aren't any tests so far, I haven't properly navigated the test setup...
Which entertainingly originally told opaque to make a blob of near ulong.max! It happens for array where the size of type depends on a template parameter for the enclosing struct....
To reproduce: Create dummy .dpp with a single `#include "boost/date_time/gregorian/gregorian.hpp"` Issue: Wall of text akin to this: ``` Untranslatable cursor Cursor(ClassTemplatePartialSpecialization, "__array_traits", Type(Unexposed, "__array_traits")) Untranslatable cursor Cursor(CXXBaseSpecifier, "unary_function", Type(Unexposed, "unary_function"))...
See xenon. It renames the getter and setter to have a _ at end of name and that causes a clash with the private field name itself
Failing meaning dmd chokes
your code might work but dpp offset probably doesn't https://github.com/rust-lang/rust-bindgen/issues/1443
To start with you could just check dpp doesn't choke on their headers, linked here: https://github.com/rust-lang/rust-bindgen Someday we can check the D declaration is right but it's not urgent. They...
So we should just include a test to keep compiler honest. https://gist.githubusercontent.com/retep998/9503145841a61551d3c6/raw/a78ed471356f44430e7f9522f45878f9b4e55a19/com.cpp https://github.com/rust-lang/rfcs/issues/1342