Compiler Error J0267

A delegate cannot be 'identifier'

The compiler detected an attempt to declare a delegate with an invalid modifier. Only the public and final modifiers can be applied to a delegate declared outside of a class. A delegate declared within a class can have the public, final, protected, and private modifiers applied. Ensure that your delegate declaration is not using an invalid modifier and compile again.

Note   Although you can use the final modifier in a delegate declaration, it is not needed as delegates are implicitly final.

The following example illustrates this error:

private delegate void Simple(int var1, int var2);
//error: cannot declare a delegate as 'private'