Compiler Error CS0666
'member' : new protected member declared in struct
A struct cannot be abstract and is always implicitly sealed. Because structs do not support inheritance, the concept of a protected member in a struct makes no sense. For more information, see Inheritance (C# Programming Guide).
Example
The following sample generates CS0666:
// CS0666.cs
class M
{
static void Main()
{
}
}
struct S
{
protected int x; // CS0666
}