Proper C++ support