Edit

Share via


Compiler Error C3097

'attribute': attribute must be scoped with 'assembly:' or 'module:'

A global attribute was used incorrectly.

For more information, see User-Defined Attributes.

Example

The following sample generates C3097.

// C3097.cpp
// compile with: /clr /c
using namespace System;

[AttributeUsage(AttributeTargets::All, AllowMultiple = true)]
public ref class Attr : public Attribute {
public:
   Attr(int t) : m_t(t) {}
   int m_t;
};

[Attr(10)];   // C3097
[assembly:Attr(10)];   // OK

[Attr(10)]   // OK
public ref class MyClass {};