Support for C++ Standards
On the host side, the compiler is consistent with Clang 15 and supports the complete C/C++ standard.
On the device, the C++11 standard is supported by default, with options to specify C++14, C++17, or C++20. Due to hardware restrictions, certain C++ runtime capabilities are not supported, such as:
- Virtual functions
- Virtual inheritance
- Runtime recursion
- Dynamic memory allocation using malloc, new, or free
- STL
- Runtime type identification (typeid)
- File system I/O
- Tuple in the standard library and algorithm operations (Related library function calls must be marked with aicore.)
Parent topic: Appendix