Compiler Error C3749

 

For the latest documentation on Visual Studio 2017 RC, see Visual Studio 2017 RC Documentation.

'attribute': a custom attribute may not be used inside a function

A custom attribute cannot be used inside a function. (For more information on custom attributes, see the topic attribute.)

The following sample generates C3749:

// C3749a.cpp  
// compile with: /clr /c  
using namespace System;  
  
[AttributeUsage(AttributeTargets::All)]  
public ref struct ABC : public Attribute {  
   ABC() {}  
};  
  
void f1() { [ABC]; };  // C3749  

The following sample generates C3749:

// C3749b.cpp  
// compile with: /clr:oldSyntax /c  
using namespace System;  
  
[attribute(All)]  
public __gc struct ABC {  
   ABC() {}  
};  
  
void f1() { [ABC]; };  // C3749  

Show: