On Monday, 9 February 2015 at 04:27:06 UTC, Kelly wrote:
Thanks, just got that tangled mess of templates that is
std::string working too:
Hey Elie, this is great stuff, as usual. I have written a test
file for bitset here also (including a couple failures I am
sure you are aware of, but others might want to see what works
and what doesn't).
Good to see bitset instantiating and basically working too! Can I
add your code to the tests?
So yes to clear things up a bit, operators are still missing and
so are many other features. Off the top of my head:
- Function templates => the groundwork is here, they're already
mapped and it
shouldn't be too difficult to get them instantiating from D
- Operators => probably easy to add although there might be
differences between C++ and D operators
- Functions with class values parameters aren't even mapped yet,
since I haven't made my mind on how to handle class values.
Despite the "POD or not" issue it still feels more consistent to
treat C++ classes like D classes, while adding C++ class value
types to DMD's types like C++ reference types were with
TypeReference (which makes C++ variables with reference types
usable but which can't be assigned as the types of D variables)
- C++ reference types are supported by DMD but not by LDC yet,
they only work for function parameters and return types since
Calypso replace them by "ref"