everything in C++ so I can use LLVM