We have a feature request for this:
case=32032
but don't hold your breath: this is not something we try to do in the near future: Consider the following code:
foo.h
#ifdef WIN32
#include "bar.h"
#include <string>
#elif UNIX
#include "../bar.h"
#include "homegrown_string.h>
#else
#include <string.h>
#endif
suddenly there is no single answer to the question, since the code is targeting several OS's, and has different rules for each OS.
C++ is quite complex so it is not feasible to analize everything fast and still reliably. In addition, in C++ the problem is often that people may include headers to other headers which results in a very complex include hierarchy that is not possible to simplify without modifying some code.