If cppcheck runs into a #error then it aborts the check. So you can end up in the situation whereby including headers triggers a #error (if for example you haven't correctly set up your -D preprocessor defines for cppcheck on the command line).
This means that files that were checked previously will no longer get checked because the tests were aborted in the header, i.e. before the offending lines of code were reached