I see an issue with the include file header guards. The implementation
| #if !defined(FILE_NAME)
//...
#define FILE_NAME
#endif
|
The purpose of the header guard is to prevent multiple includes of a header file. However, similar to the "unity" method of the cpp files, header files themselves may include other header files and so on and so on. If one of those files happens to include FILE_NAME.h then the header guard will fail because the define doesn't occur until the end of the file.
I most often see the #define immediately after the check
| #ifndef FILE_NAME
#define FILE_NAME
//...
#endif
|
- tim