prog.cpp:12: error: expected unqualified-id before 'typename'
prog.cpp:12: error: expected `)' before 'typename'
prog.cpp:13: error: expected unqualified-id before 'typename'
prog.cpp:13: error: expected `)' before 'typename'
prog.cpp:16: error: expected nested-name-specifier before 'param_set_proc_t'
prog.cpp:16: error: expected ';' before 'set_proc'
prog.cpp:17: error: expected nested-name-specifier before 'param_get_proc_t'
prog.cpp:17: error: expected ';' before 'get_proc'
prog.cpp:18: error: expected `)' before 's'
prog.cpp:21: error: ISO C++ forbids declaration of 'map' with no type
prog.cpp:21: error: invalid use of '::'
prog.cpp:21: error: expected ';' before '<' token
prog.cpp:23: error: expected unqualified-id before '&' token
prog.cpp:23: error: expected ',' or '...' before '&' token
prog.cpp:28: error: 'map' in namespace 'std' does not name a type
prog.cpp:28: error: expected unqualified-id before '<' token
prog.cpp:35: error: expected unqualified-id before '&' token
prog.cpp:35: error: expected ',' or '...' before '&' token
prog.cpp:43: error: 'getParam' has not been declared
prog.cpp:43: error: expected unqualified-id before '&' token
prog.cpp:43: error: expected ',' or '...' before '&' token
prog.cpp:43: error: ISO C++ forbids declaration of 'CLIMETHOD' with no type
prog.cpp:43: error: 'CLIMETHOD' declared as function returning a function
prog.cpp: In member function 'void CImplBase<TInterface, TDerived>::addParamHandler()':
prog.cpp:25: error: 'paramHandlers' was not declared in this scope
prog.cpp:25: error: 'name' was not declared in this scope
prog.cpp:25: error: 's' was not declared in this scope
prog.cpp:25: error: 'g' was not declared in this scope
prog.cpp: In member function 'unsigned int CImplBase<TInterface, TDerived>::setParam()':
prog.cpp:37: error: 'map' is not a member of 'std'
prog.cpp:37: error: 'wstring' is not a member of 'std'
prog.cpp:37: error: expected primary-expression before '>' token
prog.cpp:37: error: '::const_iterator' has not been declared
prog.cpp:37: error: expected `;' before 'cit'
prog.cpp:38: error: 'cit' was not declared in this scope
prog.cpp:38: error: 'paramHandlers' was not declared in this scope
prog.cpp:40: error: 'cit' was not declared in this scope
prog.cpp:40: error: 'paramName' was not declared in this scope
prog.cpp:40: error: 'pv' was not declared in this scope
prog.cpp: In member function 'int CImplBase<TInterface, TDerived>::CLIMETHOD(int)':
prog.cpp:45: error: 'map' is not a member of 'std'
prog.cpp:45: error: 'wstring' is not a member of 'std'
prog.cpp:45: error: expected primary-expression before '>' token
prog.cpp:45: error: '::const_iterator' has not been declared
prog.cpp:45: error: expected `;' before 'cit'
prog.cpp:46: error: 'cit' was not declared in this scope
prog.cpp:46: error: 'paramHandlers' was not declared in this scope
prog.cpp:48: error: 'cit' was not declared in this scope
prog.cpp:48: error: 'paramName' was not declared in this scope
prog.cpp:48: error: 'pv' was not declared in this scope
prog.cpp: At global scope:
prog.cpp:59: error: expected unqualified-id before '&' token
prog.cpp:59: error: expected ',' or '...' before '&' token
prog.cpp:64: error: expected unqualified-id before '&' token
prog.cpp:64: error: expected ',' or '...' before '&' token
prog.cpp: In constructor 'CImpl::CImpl()':
prog.cpp:71: error: ISO C++ forbids taking the address of an unqualified or parenthesized non-static member function to form a pointer to member function. Say '&CImpl::paramSetParamHandler'
prog.cpp:71: error: ISO C++ forbids taking the address of an unqualified or parenthesized non-static member function to form a pointer to member function. Say '&CImpl::paramGetParamHandler'
prog.cpp:71: error: no matching function for call to 'CImpl::addParamHandler(const wchar_t [6], unsigned int (CImpl::*)(), unsigned int (CImpl::*)())'
prog.cpp:23: note: candidates are: void CImplBase<TInterface, TDerived>::addParamHandler() [with TInterface = ISomeInterface, TDerived = CImpl]
prog.cpp: In function 'int main()':
prog.cpp:85: error: 'class CImpl' has no member named 'getParam'