Hello, In the below code the compiler throws "undeclared identifier" when the commented line is uncommented. Whereas the line just before compiles fine.
Regards, Manu typedef bool (* DummyFunc) (); bool ExecDummy (DummyFunc fptr) { if (fptr) return fptr (); return false; } constexpr unsigned int IsMyAppClient = 0; constexpr bool CheckForTypeClient (unsigned int pAppType) { return ((pAppType & IsMyAppClient) != 0); } class MyAppTemplate { public: template <unsigned int T> static bool MyAppInit (); }; template <unsigned int T> bool MyAppTemplate::MyAppInit () { if constexpr (CheckForTypeClient(T)) { return ClientMain (); // no error //return ExecDummy(ClientMain); // error: use of undeclared identifier 'ClientMain' } return false; } int __cdecl main (int pArgc, char* pArgv[]) { constexpr int TVal = 3; MyAppTemplate::MyAppInit<TVal> (); return 0; }
_______________________________________________ cfe-users mailing list cfe-users@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users