Compiler Error CS0054

Inconsistent accessibility: indexer return type 'type' is less accessible than indexer 'indexer'

A public construct must return a publicly accessible object. For more information, see Access Modifiers.

The following sample generates CS0054:

// CS0054.cs  
class MyClass  
// try the following line instead  
// public class MyClass  
{  
}  
  
public class MyClass3  
{  
   public MyClass this[int i]   // CS0054  
   {  
      get  
      {  
         return new MyClass();  
      }  
   }  
}  
  
public class MyClass2  
{  
   public static void Main()  
   {  
   }  
}