Microsoft C++ doing what Loyc is doing?

This post was imported from blogspot.

I came across this MSDN article today, which says
...when the project is built, the compiler parses each C++ source file, producing an object file. However, when the compiler encounters an attribute, it is parsed and syntactically verified. The compiler then dynamically calls an attribute provider to insert code or make other modifications at compile time. The implementation of the provider differs depending on the type of attribute. For example, ATL-related attributes are implemented by Atlprov.dll.

So, boo and Loyc aren't the only compilers doing binary-compatible compiler extensions. I wonder who else is doing it.