<?xml version="1.0"?>
<ErrorDocumentation xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <ErrorName>CS0612</ErrorName>
  <Examples>
    <string>// CS0612: `Foo.Bar' is obsolete
// Line: 8
// Compiler options: -r:CS0612-2-lib.dll -warnaserror

public class Bar {
        public static int Main ()
        {
                Foo foo = new Foo ();
                return foo.Bar;
        }
}
</string>
    <string>// CS0612: `A.Value' is obsolete
// Line: 13
// Compiler options: -warnaserror

class A {
    [System.Obsolete ("")]
    int Value {
        set {
        }
    }
    
    public A () {
        Value = 4;
    }
}</string>
    <string>// CS0612: `O1' is obsolete
// Line: 23
// Compiler options: -warnaserror

using System;

[Obsolete]
class O1
{
}

#pragma warning disable 612
class A
{
	public virtual void Foo&lt;T&gt; () where T : O1
	{
	}
}
#pragma warning restore 612

class B : A
{
	public override void Foo&lt;U&gt; ()
	{
	}
}
</string>
    <string>// CS0612: `O2' is obsolete
// Line: 23
// Compiler options: -warnaserror

using System;

[Obsolete]
interface O2
{
}

#pragma warning disable 612
class A
{
	public virtual void Foo&lt;T&gt; () where T : O2
	{
	}
}
#pragma warning restore 612

class B : A
{
	public override void Foo&lt;U&gt; ()
	{
	}
}
</string>
    <string>// CS0612: `E.GetEnumerator()' is obsolete
// Line: 22
// Compiler options: -warnaserror

using System.Collections;
using System;

class E : IEnumerable
{
	[Obsolete]
	public IEnumerator GetEnumerator ()
	{
		throw new System.NotImplementedException ();
	}
}

class C
{
	public static void Main ()
	{
		var e = new E ();
		foreach (var entry in e) {
		}
	}
}</string>
    <string>// CS0612: `A.Value' is obsolete
// Line: 13
// Compiler options: -warnaserror

class A {
    [System.Obsolete]
    int Value {
        set {
        }
    }
    
    public A () {
        Value = 4;
    }
}</string>
  </Examples>
</ErrorDocumentation>