<?xml version="1.0" encoding="iso-8859-1"?>
<ErrorDocumentation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <ErrorName>CS0108</ErrorName>
  <Examples>
    <string>// cs0108.cs: The new keyword is required on 'Derived.EE' because it hides inherited member
// Line: 11

class Base {
	public enum EE {
            Item
        };
}

class Derived : Base {
        public int EE;
}
</string>
    <string>// cs0108-2.cs: The new keyword is required on 'Derived.Test(bool)' because it hides 'BaseInterface.Test(bool)'
// Line: 9

interface BaseInterface {
	void Test (bool arg);
}

interface Derived : BaseInterface {
	void Test (bool arg);
}</string>
    <string>// cs0108.cs: The new keyword is required on 'O.InnerAttribute()' because it hides inherited member
// Line: 11

using System;

public class Base
{
    public void InnerAttribute () {}
}

class O: Base
{
    [AttributeUsage(AttributeTargets.Class)]
    public sealed class InnerAttribute: Attribute {
    }        
}</string>
    <string>// cs0108.cs: The new keyword is required on 'Derived.Prop(int)' because it hides inherited member
// Line: 13

class Base {
	public void Prop (int a) {}
}

class Derived : Base {
	public int Prop {
            get {
                return 0;
            }
        }
}
</string>
    <string>// cs0108.cs: The new keyword is required on 'Derived.Prop' because it hides inherited member
// Line: 13

class Base {
	public bool Prop = false;
}

class Derived : Base {
	public int Prop {
            get {
                return 0;
            }
        }
}
</string>
    <string>// cs0108.cs: The new keyword is required on 'Derived.Prop' because it hides inherited member
// Line: 13

class Base {
	public int Prop {
            get {
                return 0;
            }
        }    
}

class Derived : Base {
	public bool Prop = false;
}
</string>
    <string>// cs0108.cs: The new keyword is required on 'Derived.Prop because it hides inherited member
// Line: 13

class Base {
	public bool Prop = false;
}

class Derived : Base {
        public void Prop (bool b) {}
}
</string>
    <string>// cs0108.cs: The new keyword is required on 'Derived.Method()' because it hides inherited member
// Line: 10

class Base {
	public bool Method () { return false; }
        public void Method (int a) {}
}

class Derived : Base {
        public void Method () {}
}
</string>
    <string>// cs0108.cs: The new keyword is required on 'Outer.Inner' because it hides inherited member
// Line: 13

public class Base
{
    public int Inner { set { } }
}

class Outer: Base
{
    public void M () {}
    
    public class Inner
    {
    }
}</string>
    <string>// cs0108.cs: The new keyword is required on MEMBER because it hides MEMBER2
// Line:

class Base {
	public void F () {}
}

class Derived : Base {
	void F () {}
}
</string>
  </Examples>
</ErrorDocumentation>