title: Detecting precompiled headers
body: <p>Is there a way for the preprocessor to detect if the code in current
  translation unit uses(or is creating) precompiled headers?
  <br><br> --- <br>
  The actual problem I'm facing right now is that I'm on a project that is
  abusing PCH by precompiling virtually all header files. <br>That means there is none of
  the clear dependency management you can get from #includes and the compile times is awful.
  Practically every change will trigger a full rebuild.<br>
  The application is way to big to just fix it in one go, and some of the old guys refuses
  to belive that precompiling everyting is bad in any way. I will have to prove it first.<br>
  So I must do it step by step and make sure my changes does not affect
  code that is compiled the old PCH way.<br>
  My plan is to do ifdef out the PCH.h and work on the non PCH version whenever I have some time to spare.</p>
  
  <pre><code>#ifdef USES_PCH
  #include "PCH.h"
  #elif
  // include only whats needed
  #endif
  </code></pre>
  
  <p>I would like to avoid defining USES_PCH at command line and manually keep it in
  sync with /Y that, besides from not being very elegant, would be a pain. There is a lot of configurations
  and modules to juggle with and a lot of files that don't follow project defaults.</p>