--// cs0038-2.cs: Cannot access a nonstatic member of outer type `X' via nested type `X.Nested'
--// Line: 9
--public enum MyEnum { V = 1 }
++// CS0038: Cannot access a nonstatic member of outer type `Outer' via nested type `Outer.Inner'
++// Line: 33
--class X {
-- public MyEnum MyEnum;
-- class Nested {
-- internal MyEnum D () {
-- return MyEnum;
-- }
++public class Runner
++{
++ string msg;
++
++ public Runner (string s)
++ {
++ msg = s;
++ }
++
++ public string Report ()
++ {
++ return msg;
++ }
++}
++
++public class Outer
++{
++ private Runner r = new Runner ("Outer");
++
++ public Runner Runner
++ {
++ get { return r; }
++ set { r = value; }
}
--
-- static int Main () {
-- Nested n = new Nested ();
-- return n.D() == MyEnum.V ? 0 : 1;
++
++ class Inner
++ {
++ public string Check ()
++ {
++ return Runner.Report ();
++ }
}
}
--- /dev/null
--- /dev/null
++// CS0119: Expression denotes a `method group', where a `variable', `value' or `type' was expected
++// Line: 20
++
++using System;
++
++enum Enum
++{
++ Test
++}
++
++class A : Attribute
++{
++ public A (object e)
++ {
++ }
++}
++
++class C
++{
++ [A (Enum.Test)]
++ int Enum ()
++ {
++ return 0;
++ }
++}
+++ /dev/null
--// CS0120: An object reference is required to access non-static member `C.Enum()'
--// Line: 20
--
--using System;
--
--enum Enum
--{
-- Test
--}
--
--class A : Attribute
--{
-- public A (object e)
-- {
-- }
--}
--
--class C
--{
-- [A (Enum.Test)]
-- int Enum ()
-- {
-- return 0;
-- }
--}
--- /dev/null
--- /dev/null
++// CS0120: An object reference is required to access non-static member `App.Test'
++// Line: 15
++
++class App
++{
++ Test a = new Test ();
++
++ public Test Test
++ {
++ get { return a; }
++ }
++
++ public static void Main (string[] args)
++ {
++ Test.Run ();
++ }
++}
++
++class Test
++{
++ public void Run () { }
++}
--- /dev/null
--- /dev/null
++// CS0171: Field `S<TKey>.key' must be fully assigned before control leaves the constructor
++// Line: 13
++
++public struct S<TKey> {
++ private TKey key;
++
++ public TKey Key {
++ get { return key; }
++ private set { key = value; }
++ }
++
++ public S (TKey key)
++ {
++ Key = key;
++ }
++}
--- /dev/null
--- /dev/null
++// CS0214: Pointers and fixed size buffers may only be used in an unsafe context
++// Line: 11
++// Compiler options: -unsafe
++
++public class C
++{
++ unsafe int* i;
++
++ public static void Main ()
++ {
++ var v = new C().i;
++ }
++}
--- /dev/null
--- /dev/null
++// CS1061: Type `object' does not contain a definition for `Test' and no extension method `Test' of type `object' could be found (are you missing a using directive or an assembly reference?)
++// Line: 17
++
++public class S
++{
++ public static void Test()
++ {
++ }
++}
++
++public class M
++{
++ public object S { get; set; }
++
++ public void Main ()
++ {
++ S.Test ();
++ }
++}