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
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users