CS1031 de erro do compilador

Mensagem de erro

Tipo esperado

Um parâmetro de tipo é esperado.

Exemplo

O exemplo a seguir gera CS1031:

// CS1031.cs
namespace x
{
    public class ii
    {
    }

    public class a
    {
        public static operator +(a aa)   // CS1031
        // try the following line instead
        // public static ii operator +(a aa)
        {
            return new ii();
        }

        public static void Main()
        {
            e = new base;   // CS1031, not a type
            e = new this;   // CS1031, not a type
            e = new ();     // CS1031, not a type
        }
    }
}