<?xml version="1.0" encoding="us-ascii"?>
<ErrorDocumentation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <ErrorName>CS1644</ErrorName>
  <Examples>
    <string>// CS1644: Feature `namespace alias qualifier' cannot be used because it is not part of the C# 1.0 language specification
// Line: 7
// Compiler options: -langversion:ISO-1

class Program
{
	static void Main ()
	{
		System.Type t = typeof (global::System.Int32);
	}
}
</string>
    <string>// CS1644: Feature `nullable types' cannot be used because it is not part of the C# 1.0 language specification
// Line: 9
// Compiler options: -langversion:ISO-1

public class Test
{
	static void Main ()
	{
		bool? testbool;
	}
}
</string>
    <string>// CS1644: Feature `optional parameter' cannot be used because it is not part of the C# 2.0 language specification
// Line: 7
// Compiler options: -langversion:ISO-2

public class C
{
	public C (int a = 0)
	{
	}
}
</string>
    <string>// CS1644: Feature `named argument' cannot be used because it is not part of the C# 3.0 language specification
// Line: 13
// Compiler options: -langversion:3

public class C
{
	static void Foo (int i)
	{
	}
	
	public static void Main ()
	{
		Foo (i : 3);
	}
}
</string>
    <string>// CS1644: Feature `implicitly typed local variable' cannot be used because it is not part of the C# 2.0 language specification
// Line:  9
// Compiler options: -langversion:ISO-2

class M
{
	public static void Main ()
	{
		var a = 1;
	}
}
</string>
    <string>// CS1644: Feature `generic type variance' cannot be used because it is not part of the C# 2.0 language specification
// Line: 5
// Compiler options: -langversion:iso-2

 public interface IFoo&lt;out T&gt; {
 }
</string>
    <string>// CS1644: Feature `generic type variance' cannot be used because it is not part of the C# 2.0 language specification
// Line: 5
// Compiler options: -langversion:iso-2

 public interface IFoo&lt;in T&gt; {
 }
</string>
    <string>// CS1644: Feature `generic type variance' cannot be used because it is not part of the C# 3.0 language specification
// Line: 5
// Compiler options: -langversion:3

public interface IFoo&lt;in T&gt;
{
}
</string>
    <string>// CS1644: Feature `query expressions' cannot be used because it is not part of the C# 2.0 language specification
// Line: 11
// Compiler options: -langversion:ISO-2

using System.Linq;

public class C
{
	public static void Main ()
	{
		var e = from a in "aaa" select a;
	}
}
</string>
    <string>// CS1644: Feature `automatically implemented properties' cannot be used because it is not part of the C# 2.0 language specification
// Line: 7
// Compiler options: -langversion:ISO-2

class P
{
	public string Name { get; set; }
}
</string>
    <string>// cs1644-2.cs: Feature `access modifiers on properties' cannot be used because it is not part of the C# 1.0 language specification
// Line: 13
// Compiler options: -langversion:ISO-1

class Class {

	public int Count {

		get {
			return 0;
		}

		protected set {
		}
	}
}
</string>
    <string>// CS1644: Feature `nullable types' cannot be used because it is not part of the C# 1.0 language specification
// Line: 7
// Compiler options: -langversion:ISO-1

class Test
{
	int? i;
	static void Main () {}
}
</string>
    <string>// CS1644: Feature `default value expression' cannot be used because it is not part of the C# 1.0 language specification
// Line: 7
// Compiler options: -langversion:ISO-1

class Test
{
	int i = default (int);
}
</string>
    <string>// CS1644: Feature `generics' cannot be used because it is not part of the C# 1.0 language specification
// Line: 5
// Compiler options: -langversion:ISO-1

class Stack &lt; type &gt;
{
}

</string>
    <string>// CS1644: Feature `lambda expressions' cannot be used because it is not part of the C# 2.0 language specification
// Line: 11
// Compiler options: -langversion:ISO-2

class C
{
	delegate void D ();
	
	public void Foo ()
	{
		D e = () =&gt; { };
	}
}

</string>
    <string>// CS1644: Feature `nullable types' cannot be used because it is not part of the C# 1.0 language specification
// Line: 9
// Compiler options: -langversion:ISO-1

struct C
{
	void G ()
	{
		object o = (C?[]) this;
	}
}
</string>
    <string>// CS1644: Feature `object initializers' cannot be used because it is not part of the C# 2.0 language specification
// Line: 14
// Compiler options: -langversion:ISO-2

class Data
{
	public int Value;
}

class A
{
	void Foo ()
	{
		new Data () { Value = 3 };
	}
}
</string>
    <string>// CS1644: Feature `implicitly typed arrays' cannot be used because it is not part of the C# 1.0 language specification
// Line: 7
// Compiler options: -langversion:ISO-1

class A
{
	string[] array = new [] { "Foo", "Bar", "Baz" };
}
</string>
    <string>// CS1644: Feature `partial methods' cannot be used because it is not part of the C# 2.0 language specification
// Line: 7
// Compiler options: -langversion:ISO-2

partial class P
{
	partial void Foo ();
}
</string>
    <string>// CS1644: Feature `extension methods' cannot be used because it is not part of the C# 2.0 language specification
// Line: 17
// Compiler options: -langversion:ISO-2

static class Extensions
{
	static string Foo (string s, this bool b, int i)
	{
		return s;
	}
}
</string>
    <string>// cs1644.cs: Feature `generics' cannot be used because it is not part of the C# 1.0 language specification
// Line: 5
// Compiler options: -langversion:ISO-1

class X&lt;V&gt;
{
}

class X
{
	static void Main ()
	{ }
}
</string>
    <string>// cs1644-3.cs: Feature `fixed size buffers' cannot be used because it is not part of the C# 1.0 language specification
// Line: 6
// Compiler options: -langversion:ISO-1

struct S {
    fixed long buffer [5];
}
</string>
    <string>// CS1644: Feature `anonymous types' cannot be used because it is not part of the C# 1.0 language specification
// Line: 9
// Compiler options: -langversion:ISO-1

class A
{
	void Foo ()
	{
		var v = new { X = "Bar" };
	}
}
</string>
    <string>// CS1644: Feature `collection initializers' cannot be used because it is not part of the C# 2.0 language specification
// Line: 9
// Compiler options: -langversion:ISO-2

using System.Collections.Generic;

class A
{
	void Foo ()
	{
		object o = new List&lt;int&gt; { 1, 2, 3 };
	}
}
</string>
    <string>// CS1644: Feature `switch expression of boolean type' cannot be used because it is not part of the C# 1.0 language specification
// Line: 8
// Compiler options: -langversion:ISO-1

class Class {
	public void Foo (bool b)
	{
		switch (b)
		{
			case true:
				break;
			case false:
				break;
		}
	}
}
</string>
    <string>// CS1644: Feature `namespace alias qualifier' cannot be used because it is not part of the C# 1.0 language specification
// Line: 9
// Compiler options: -langversion:ISO-1

class Program
{
	static void Main ()
	{
		global::System.Console.WriteLine ("ok");
	}
}
</string>
    <string>// CS1644: Feature `partial types' cannot be used because it is not part of the C# 1.0 language specification
// Line: 5
// Compiler options: -langversion:ISO-1

partial class Test
{
}</string>
    <string>// CS1644: Feature `external alias' cannot be used because it is not part of the C# 1.0 language specification
// Line: 5
// Compiler options: -langversion:ISO-1 -r:a=System.dll

extern alias a;
</string>
    <string>// CS1644: Feature `null coalescing operator' cannot be used because it is not part of the C# 1.0 language specification
// Line: 10
// Compiler options: -langversion:ISO-1

class C
{
	string program;

	internal string Program {
		get { return program ?? string.Empty; }
	}
}</string>
    <string>// CS1644: Feature `namespace alias qualifier' cannot be used because it is not part of the C# 1.0 language specification
// Line: 7
// Compiler options: -langversion:ISO-1

class Program
{
	static global::System.Void Main ()
	{
	}
}
</string>
    <string>// cs1644.cs: Feature `static classes' cannot be used because it is not part of the C# 1.0 language specification
// Line: 5
// Compiler options: -langversion:ISO-1

static class Class {
}
</string>
  </Examples>
</ErrorDocumentation>