<?xml version="1.0"?>
<ErrorDocumentation xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <ErrorName>CS0136</ErrorName>
  <Examples>
    <string>// CS0136: A local variable named `res' cannot be declared in this scope because it would give a different meaning to `res', which is already used in a `child' scope to denote something else
// Line: 15

class C
{
	public void Foo (int i, int v)
	{
		switch (i) {
			case 1:
				if (v &gt; 0) {
					int res = 1;
				}
				break;
			case 2:
				int res = 2;
				break;
		}
	}
}
</string>
    <string>// CS0136: A local variable named `i' cannot be declared in this scope because it would give a different meaning to `i', which is already used in a `child' scope to denote something else
// Line: 15
delegate string Fun ();

class X
{
	static void Main ()
	{
		for (int j = 0; j &lt; 5; j++) {
			Fun m = delegate {
				int i = j;
				return "&lt;&lt;" + i + "&gt;&gt;";
			};

			int i = j;
		}
	}
}
</string>
    <string>// CS0136: A local variable named `s' cannot be declared in this scope because it would give a different meaning to `s', which is already used in a `parent or current' scope to denote something else
// Line: 10

internal class Program
{
	public static void Main ()
	{
		object o = null;
		if (o is string s) {
			int s = 1;
		}
	}
}</string>
    <string>// CS0136: A local variable named `t' cannot be declared in this scope because it would give a different meaning to `t', which is already used in a `child' scope to denote something else
// Line: 18
using System;

public delegate void Hello (Test test);

public class Test
{
	public void Whatever ()
	{ }

	static void Main ()
	{
		Hello hello = delegate (Test test) {
			Test t = test;
			t.Whatever ();
		};
		Test t = new Test ();
		hello (t);
	}
}
</string>
    <string>// CS0136: A local variable named `i' cannot be declared in this scope because it would give a different meaning to `i', which is already used in a `parent or current' scope to denote something else
// Line: 10
delegate string Fun (int i);

class X
{
	static void Main ()
	{
		for (int i = 0; i &lt; 5; i++) {
			Fun m = delegate (int i) {
				return "&lt;&lt;" + i + "&gt;&gt;";
			};
		}
	}
}
</string>
    <string>// CS0136: A local variable named `t' cannot be declared in this scope because it would give a different meaning to `t', which is already used in a `parent or current' scope to denote something else
// Line: 15
using System;

public delegate void Hello (Test test);

public class Test
{
	public void Whatever ()
	{ }

	static void RunIt (Test t)
	{
		Hello hello = delegate (Test test) {
			Test t = test;
			t.Whatever ();
		};
		hello (t);
	}

	static void Main ()
	{
		Test t = new Test ();
		RunIt (t);
	}
}
</string>
    <string>// CS0136: A local variable named `arg' cannot be declared in this scope because it would give a different meaning to `arg', which is already used in a `parent or current' scope to denote something else
// Line: 11
// Compiler options: -langversion:experimental

using System;

class A (Func&lt;int, int&gt; barg)
{
}

class B (int arg) 
	: A ((arg) =&gt; 1)
{
}</string>
    <string>// CS0136: A local variable named `v' cannot be declared in this scope because it would give a different meaning to `v', which is already used in a `parent or current' scope to denote something else
// Line: 13

using System.Linq;

public class Test
{
	public static void Main ()
	{
		var l = from v in "abcd" select (v =&gt; v);
	}
}
</string>
    <string>// CS0136: A local variable named `t' cannot be declared in this scope because it would give a different meaning to `t', which is already used in a `child' scope to denote something else
// Line: 17
using System;

public delegate void Hello (Test test);

public class Test
{
	public void Whatever ()
	{ }

	static void Main ()
	{
		Hello hello = delegate (Test t) {
			t.Whatever ();
		};
		Test t = new Test ();
		hello (t);
	}
}
</string>
    <string>// CS0136: A local variable named `t' cannot be declared in this scope because it would give a different meaning to `t', which is already used in a `child' scope to denote something else
// Line: 17
using System;

public delegate void Hello (Test test);

public class Test
{
	public void Whatever ()
	{ }

	static void Main ()
	{
		Hello hello = delegate (Test t) {
			t.Whatever ();
		};
		Test t = new Test ();
		hello (t);
	}
}
</string>
    <string>// CS0136: A local variable named `i' cannot be declared in this scope because it would give a different meaning to `i', which is already used in a `child' scope to denote something else
// Line: 9
class X {
	void b ()
	{
		{
			string i;
		}
		int i;
	}
}


</string>
    <string>// CS0136: A local variable named `i' cannot be declared in this scope because it would give a different meaning to `i', which is already used in a `parent or current' scope to denote something else
// Line: 10

using System;

class T
{
	public void Foo (int i)
	{
		Action&lt;int&gt; v = x =&gt; { int i = 9; };
	}
}
</string>
    <string>// CS0136: A local variable named `t' cannot be declared in this scope because it would give a different meaning to `t', which is already used in a `parent or current' scope to denote something else
// Line: 14
using System;

public delegate void Hello (Test test);

public class Test
{
	public void Whatever ()
	{ }

	static void RunIt (Test t)
	{
		Hello hello = delegate (Test t) {
			t.Whatever ();
		};
		hello (t);
	}

	static void Main ()
	{
		Test t = new Test ();
		RunIt (t);
	}
}
</string>
    <string>// CS0136: A local variable named `j' cannot be declared in this scope because it would give a different meaning to `j', which is already used in a `parent or current' scope to denote something else
// Line: 7

class X {
	public static void Bar (int j, params int [] args)
	{
		foreach (int j in args)
			;
	}
}
</string>
    <string>// CS0136: A local variable named `t' cannot be declared in this scope because it would give a different meaning to `t', which is already used in a `child' scope to denote something else
// Line: 20
using System;

public delegate void Hello (Test test);

public class Test
{
	public void Whatever ()
	{ }

	static void Main ()
	{
		Hello hello = delegate (Test test) {
			Hello hello2 = delegate (Test t) {
				t.Whatever ();
			};
			hello2 (test);
		};
		Test t = new Test ();
		hello (t);
	}
}
</string>
    <string>// CS0136: A local variable named `arg' cannot be declared in this scope because it would give a different meaning to `arg', which is already used in a `parent or current' scope to denote something else
// Line: 11
// Compiler options: -langversion:experimental

using System;

partial class PC
{
    Func&lt;int, int&gt; f = (arg) =&gt; 1;
}

partial class PC (int arg) 
{
}</string>
    <string>// CS0136: A local variable named `i' cannot be declared in this scope because it would give a different meaning to `i', which is already used in a `parent or current' scope to denote something else
// Line: 9

class X {
	void b ()
	{
		int i;
		{
			string i;
		}
	}
}


</string>
    <string>// CS0136: A local variable named `v' cannot be declared in this scope because it would give a different meaning to `v', which is already used in a `child' scope to denote something else
// Line: 11

using System.Linq;

class C
{
	public static void Main ()
	{
		var l = from v in "abcd" select v;
		int v;
	}
}
</string>
    <string>// CS0136: A local variable named `s' cannot be declared in this scope because it would give a different meaning to `s', which is already used in a `parent or current' scope to denote something else
// Line: 11

using System;

class X
{
	void Test2 (object o)
	{
		if (o is ValueType s) {
			if (o is long s) {
				Console.WriteLine (s);
			}
		}
	}
}</string>
    <string>// CS0136: A local variable named `t' cannot be declared in this scope because it would give a different meaning to `t', which is already used in a `parent or current' scope to denote something else
// Line: 15
using System;

public delegate void Hello (Test test);

public class Test
{
	public void Whatever ()
	{ }

	static void Main ()
	{
		Test t = new Test ();
		Hello hello = delegate (Test t) {
			t.Whatever ();
		};
		hello (t);
	}
}
</string>
  </Examples>
</ErrorDocumentation>