Compiler Error C3756

'name': delegate definition conflicts with an existing symbol

A delegate or __delegate name is the same as a class that was previously declared. Either rename the class or delete it.

The following sample generates C3756:

// C3756a.cpp
// compile with: /clr

ref class test;
delegate void test();   // C3756, rename class to resolve

int main() {
}

The following sample generates C3756:

// C3756b.cpp
// compile with: /clr:oldSyntax
#using <mscorlib.dll>

__gc class test;
__delegate void test();   // C3756, rename class to resolve

int main() {
}