Compiler Error C3309
Visual Studio 2015
The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.
The latest version of this topic can be found at Compiler Error C3309.
macro_name': module name cannot be a macro or a keyword
The value that you pass to the name property of the module attribute cannot be a symbol for the preprocessor to expand; it must be a string literal.
The following sample generates C3309:
// C3309.cpp
#define NAME MyModule
[module(name="NAME")]; // C3309
// Try the following line instead
// [module(name="MyModule")];
[coclass]
class MyClass {
public:
void MyFunc();
};
int main() {
}
Show: