Error When Compiling a C++ Project in MPLAB® XC32 - "unknown type name 'class'"
The following may be causes of the "unknown type name 'class'" error:
- The project is not actually being compiled with MPLAB® XC32 or higher.
- Both .c and .cpp files are including the header file without proper guards. Adding a .cpp file to a project causes C++ to be used for compilation. This could be the cause of the error if you don't see xc32-g++.exe being called in the Output window.
If xc32-g++.exe is being called, but the error is still present, then we recommend searching the project for all files including the header in question. If a .c file includes the header with C++ code in it (such as a class), then you need to surround that class with #ifdef __cplusplus (class) #endif .