I am actually building from command line using cmake, nmake and clang-cl, which is a msvc-compatible clang (clang++ being g++ compatible on the other hand). Noesis 2.1.0f1 (r6972).
Here are the warnings that I get:
https://pastebin.com/hKivBFnR
The first one pops up several times for each of my headers, the second one once for each one. The headers I'm talking about contain the following code:
NS_IMPLEMENT_INLINE_REFLECTION(MyWindow, NoesisApp::Window)
{
NsMeta<Noesis::TypeId>("MyId");
}
Also, the definition changes from a stub to an actual one only if compiling with g++ (clang++ in that case), due to the following code (CompilerSettings.h:147):
#ifdef __clang__
#define NS_CLANG_HAS_WARNING(x) __has_warning(x)
#define NS_CLANG_WARNING_DISABLE(x) _Pragma(NS_STRINGIFY(clang diagnostic ignored x))
#else
#define NS_CLANG_HAS_WARNING(x) 0
#define NS_CLANG_WARNING_DISABLE(x)
#endif
Whereas in the MSC branch of the if pragma the corresponding code consists of simply (CompilerSettings.h:70):
#define NS_CLANG_HAS_WARNING(x) 0
#define NS_CLANG_WARNING_DISABLE(x)
Replacing the latter with the former in noesis headers solves the -Winconsistent-missing-override warning, but the other one persists.