Compiler Error C2637


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on

The latest version of this topic can be found at Compiler Error C2637.

identifier' : cannot modify pointers to data members

A pointer to a data member cannot have a calling convention. To resolve, either remove the calling convention or declare a pointer to member function.

The following sample generates C2637:

// C2637.cpp  
// compile with: /c  
struct S {};  
int __stdcall S::*pms1;   // C2637  
// OK  
int S::*pms2;  
int (__stdcall S::*pms3)(...);