-// cs0206.cs: A property or indexer `X.P' may not be passed as an out or ref parameter
-// Line:
+// CS0206: A property or indexer `X.P' may not be passed as `ref' or `out' parameter
+// Line: 15
+
class X {
static int P { get { return 1; } set { } }
--- /dev/null
+// CS0037: Cannot convert null to `bool' because it is a value type
+// Line: 19
+// Compiler options: -langversion:linq
+
+using System;
+
+class TestA
+{
+ public string Select (Func<TestA, bool> f)
+ {
+ return "";
+ }
+}
+
+public class C
+{
+ static void Main ()
+ {
+ string foo = from a in new TestA () select null;
+ }
+}
--- /dev/null
+// CS0206: A property or indexer `anonymous type.Foo' may not be passed as `ref' or `out' parameter
+// Line: 14
+// Compiler options: -langversion:linq
+
+class C
+{
+ static void Foo (ref object o)
+ {
+ }
+
+ public static void Main ()
+ {
+ var v = new { Foo = "Bar" };
+
+ Foo (ref v.Foo);
+ }
+}
--- /dev/null
+// CS1501: No overload for method `Select' takes `1' arguments
+// Line: 17
+// Compiler options: -langversion:linq
+
+using System;
+
+class TestA
+{
+ public string value;
+
+ public TestA (string value)
+ {
+ this.value = value;
+ }
+
+ public string Select (int i, Func<TestA, TestA> f)
+ {
+ return value;
+ }
+}
+
+public class M
+{
+ static void Main ()
+ {
+ var v = new TestA ("Oh yes");
+ string foo = from a in v select a;
+ }
+}
--- /dev/null
+// CS1930: A range variable `v' may not be passes as `ref' or `out' parameter
+// Line: 19
+// Compiler options: -langversion:linq
+
+using System;
+using System.Linq;
+
+class C
+{
+ static int Foo (ref int value)
+ {
+ return 1;
+ }
+
+ public static void Main ()
+ {
+ var e = from v in "a"
+ let r = 1
+ select Foo (ref v);
+ }
+}
--- /dev/null
+// CS1942: Type inference failed to infer type argument for `select' clause. Try specifying the type argument explicitly
+// Line:
+// Compiler options: -langversion:linq
+
+using System;
+
+class TestA
+{
+ public string Select<U> (Func<TestA, U> f)
+ {
+ return "";
+ }
+}
+
+public class C
+{
+ static void Main ()
+ {
+ string foo = from a in new TestA () select null;
+ }
+}
--- /dev/null
+// CS1942: Type inference failed to infer type argument for `select' clause. Try specifying the type argument explicitly
+// Line: 13
+// Compiler options: -langversion:linq
+
+using System;
+using System.Linq;
+
+class C
+{
+ public static void Main ()
+ {
+ var e = from values in "abcd"
+ select null;
+ }
+}