'specifier' : storage-class or type specifier(s) unexpected here; ignored
Example
__declspec(dllexport) extern "C" void foo(); // warning class C { int * virtual vfunc(); // warning }; extern "C" DLLEXPORT STDAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID* ppv); // warning
The macro should be written as:
STDAPI DLLEXPORT DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID* ppv);