[svn] r6019: nemerle/trunk/ncc/testsuite/frommcs: gtest-062.n gtest-064.n gtest-082.n gtest-108.n gtest-11...

nazgul svnadmin at nemerle.org
Sun Dec 18 23:01:49 CET 2005


Log:
Add some new working tests from mono

Author: nazgul
Date: Sun Dec 18 22:59:46 2005
New Revision: 6019

Added:
   nemerle/trunk/ncc/testsuite/frommcs/gtest-062.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-064.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-082.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-108.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-111.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-146.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-164.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-183.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-187.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-192.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-196.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-198.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-201.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-202.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-205.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-207.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-209.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-210.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-215.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-218.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/gtest-friend-01-lib.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-38.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-441.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-445.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-447.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-448.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-451.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-452.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-453.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-455.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-458.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-459.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-461.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-462.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-463.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-467.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-470.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-471.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-472.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-477.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-478.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-479.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-60.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-anon-32.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-externalias-00-lib.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-externalias-01-lib.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-xml-039.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-xml-040.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-xml-041.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-xml-042.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-xml-043.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-xml-044.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-xml-045.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-xml-046.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-xml-047.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-xml-048.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-xml-049.n   (contents, props changed)
   nemerle/trunk/ncc/testsuite/frommcs/test-xml-051.n   (contents, props changed)

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-062.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-062.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,27 @@
+using System.Collections.Generic;
+
+class X
+{
+	public Test (mutable  a : int,mutable  b :  long) :  IEnumerable[int]
+	{
+		while (a < b) {
+			a++;
+			yield a;
+		};
+        }
+
+	static Main () :  int
+	{
+		mutable  x =  X ();
+		mutable  sum = 0;
+		foreach ( i in x.Test (3, 8L))
+			sum += i;
+
+		 if ( sum == 30) 0 else  1;
+	}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-064.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-064.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,45 @@
+using System;
+
+public interface IHello[T]
+{ }
+
+public interface IFoo[T]
+{
+	 GetHello () : IHello[T];
+}
+
+public interface IBar[T] : IFoo[T]
+{ }
+
+public class Foo[T] : IBar[T], IFoo[T]
+{
+	public GetHello () :  Hello
+	{
+		  Hello (this);
+	}
+        this ()
+	{
+		  _ = Hello (this);
+	}
+
+	public class Hello : IHello[T]
+	{
+		public  Foo : Foo[T];
+
+		public this (mutable  foo : Foo[T])
+		{
+			this.Foo = foo;
+		}
+	}
+}
+
+class X
+{
+	static Main () :  void
+	{ }
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-082.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-082.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,25 @@
+using System;
+
+public class Queue[T]
+{
+	protected class Enumerator
+	{
+		 mutable  queue : Queue[T];
+
+		public this (mutable  queue : Queue[T])
+		{
+			this.queue = queue;
+		}
+	}
+}
+
+class X
+{
+	static Main () :  void
+	{ }
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-108.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-108.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,33 @@
+using System;
+using System.Collections.Generic;
+
+public class Test[T]
+{
+	protected  mutable  item : T;
+
+	public this (mutable  item : T)
+	{
+		this.item = item;
+	}
+
+	public GetEnumerator() :  IEnumerator[T]
+	{
+		yield item;
+	}
+}
+
+class X
+{
+	static Main () :  void
+	{
+		mutable  test =  Test (3);
+		foreach ( a in test)
+			Console.WriteLine(a);
+	}
+}
+
+/*
+BEGIN-OUTPUT
+3
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-111.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-111.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,67 @@
+using System;
+
+public struct KeyValuePair[K,V]
+{
+	public  mutable  key : K;
+	public  mutable  value : V;
+
+	public this(mutable  k : K,mutable  v :  V) { key = k; value = v; }
+
+	public this(mutable  k : K) { key = k; value =Nemerle.Extensions.DefaultValue(V); }
+}
+
+public class Collection[T]
+{
+	public  Item : T;
+
+	public this (mutable  item : T)
+	{
+		this.Item = item;
+	}
+
+	public Find (mutable  item : ref T) :  void
+	{
+		item = Item;
+	}
+}
+
+class X
+{
+	static Main () :  int
+	{
+		mutable  p =  KeyValuePair (3);
+		mutable  q =  KeyValuePair (5, 9);
+
+		mutable  c =  Collection (q);
+		c.Find (ref p);
+
+		if (p.key != 5)
+
+		{
+			 1;
+
+		}
+
+		else
+	{
+	{
+		if (p.value != 9)
+		{
+			 2;
+		}
+		else
+	{
+	{
+
+		 0;
+	}
+	}
+	}
+	}
+	}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-146.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-146.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,33 @@
+using System;
+
+public class MyLinkedList[T] {
+	protected  mutable  first : Node;
+
+	protected class Node
+	{
+		public  mutable  item : T;
+
+		public this (mutable  item : T)
+		{
+			this.item = item; 
+		}
+	}
+}
+
+class SortedList[U] : MyLinkedList[U]
+{
+	public Insert (_ : U) :  void { 
+		mutable  _node = first;
+                ();
+	}
+}
+
+class X {
+	static Main () :  void
+	{ }
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-164.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-164.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,32 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+
+public delegate Int2Int (mutable  i : int) :  int;
+
+public class FunEnumerable
+{
+	 mutable  size : int;
+	 mutable  f : Int2Int;
+
+	public this(mutable  size : int,mutable  f :  Int2Int)
+	{
+		this.size = size; this.f = f;
+	}
+
+	public GetEnumerator() :  IEnumerator[int]
+	{
+		yield f (size);
+	}
+}
+
+class X
+{
+	static Main () :  void
+	{ }
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-183.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-183.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,33 @@
+using System;
+using System.Collections.Generic;
+
+namespace test
+{
+	class Test[T]
+	{
+		public Lookup(mutable  item : T) :  IEnumerable[T]
+		{
+			mutable  _i = 3;
+			mutable  _j = 3;
+			yield item;
+		}
+	}
+
+	class Program
+	{
+		public static Main (_ :  array [string]) :  void
+		{
+			mutable  test =  Test();
+			foreach( s in test.Lookup("hi") )
+			{
+				Console.WriteLine(s);
+			}
+		}
+	}
+}
+
+/*
+BEGIN-OUTPUT
+hi  
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-187.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-187.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,29 @@
+public class Foo[T] where T:Foo[T]
+{
+  public  mutable  n : T;
+
+  public next() :  T
+  {
+     n;
+  }
+}
+ 
+public class Goo : Foo[Goo]
+{
+  public  mutable  x : int;
+}
+ 
+public class Test
+{
+  public static Main() :  void
+  {
+    mutable  x =  Goo();
+    
+    x=x.next();
+  }
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-192.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-192.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,21 @@
+//
+// In the current Beta compiler (as of August 2005)
+// the following produces a warning ("a" and "A") as opposed
+// to an error
+//
+using System;
+[assembly:CLSCompliant(true)]
+[CLSCompliant(true)]
+public enum X {
+       | A
+       | a
+}
+
+class xX {
+       static Main () :  void {}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-196.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-196.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,51 @@
+using System;
+using System.Threading;
+using System.Collections;
+using System.Collections.Generic;
+
+public class Dict : Dictionary [object, object]
+{
+}
+
+public class Foo
+{
+	public static Main () :  int
+	{
+		mutable  dict =  Dict ();
+
+		dict.Add ( Object (),  Object ());
+		{
+		mutable temp_2_return_ = Nemerle.Extensions.DefaultValue(int);
+		mutable temp_1_break_loop_ = false;
+		foreach ( kv :> object in dict)
+		when (!temp_1_break_loop_ ) {
+			mutable  t = kv.GetType ();
+			if (t.IsGenericType)
+				{
+				temp_1_break_loop_ = true;
+				temp_2_return_ =  0;
+				}
+			else
+				{
+				temp_1_break_loop_ = true;
+				temp_2_return_ =  1;
+				}
+		}
+		if( temp_1_break_loop_ )
+		{
+		 temp_2_return_;
+		}
+		else
+		{
+		{
+		 2;
+		}
+		}
+		}
+	}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-198.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-198.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,31 @@
+// gtest-198.cs : bug #75957
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace ClassLibrary2
+{
+        public class List1[T] : List[T]
+        { }
+
+        public class List2[T]
+        {
+                private  mutable  _List : List1[T] =  List1();
+                public AddItem(mutable  item : T) :  void
+                {
+                        _List.Add(item);
+                }
+        }
+
+	class Foo
+	{
+		public static Main () :  void {}
+	}
+}
+
+ 
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-201.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-201.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,54 @@
+using System;
+using MSG = System.Collections.Generic;
+
+public class HashSet[T]
+{
+	 mutable  value : long;
+
+	public this (mutable  value : long)
+	{
+		this.value = value;
+	}
+
+	public Test () :  long
+	{
+		 value;
+	}
+
+	public GetEnumerator() :  MSG.IEnumerator[long]
+	{
+		yield Test ();
+	}
+}
+
+class X
+{
+	static Main () :  int
+	{
+		mutable  hb =  HashSet (12345678);
+
+		mutable temp_2_return_ = Nemerle.Extensions.DefaultValue(int);
+
+		mutable temp_1_break_loop_ = false;
+
+		foreach ( value :> long in hb)
+
+		when (!temp_1_break_loop_ ) {
+			when (value != 12345678)
+				{
+				temp_1_break_loop_ = true;
+				temp_2_return_ =  1;
+				}
+		}
+
+		if( temp_1_break_loop_ )
+		 temp_2_return_;
+		else
+                 0;
+	}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-202.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-202.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,35 @@
+public class Generic[T]
+{
+	private  mutable  container :  array [2,T] = array(1,1);
+	
+	public Item [mutable  row : int,mutable  col :  int] : T
+	{
+		get {
+			 container[row, col];
+		}
+		set {
+			container[row, col] = value;
+		}
+	}
+}
+
+public struct Fault
+{
+	public static Main () :  void
+	{
+		mutable  gen =  Generic ();
+		gen[0, 0] =  Fault ();
+		System.Console.WriteLine (gen[0, 0].ToString ());
+	}
+	
+	public override ToString () :  string
+	{
+		 "Hi!";
+	}
+}
+
+/*
+BEGIN-OUTPUT
+Hi!  
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-205.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-205.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,46 @@
+using System;
+using System.Reflection;
+
+public class Foo[S]
+{ }
+
+public struct Bar[T]
+{ }
+
+public class Test[U]
+{
+	public static Func (mutable  u : U) :  void
+	{
+		Console.WriteLine (u.GetType());
+	}
+}
+
+class X
+{
+	static Test (mutable  t : Type,mutable  arg :  object) :  void
+	{
+		mutable  mi = t.GetMethod ("Func");
+		_ = mi.Invoke (null,    array[ arg ]);
+	}
+
+	static Main () :  void
+	{
+		Test (typeof (Test[Foo[int]]),  Foo ());
+		Test (typeof (Test[Bar[int]]),  Bar ());
+		Test (typeof (Test[Bar[string]]),  Bar ());
+		Test (typeof (Test[Foo[DateTime]]),  Foo ());
+		Test (typeof (Test[DateTime]), DateTime.Now);
+		Test (typeof (Test[string]), "Hello");
+	}
+}
+
+/*
+BEGIN-OUTPUT
+Foo`1[System.Object]
+Bar`1[System.Int32]
+Bar`1[System.String]
+Foo`1[System.Object]
+System.DateTime
+System.String
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-207.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-207.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,20 @@
+// Note that this test actually checks if we compiled mscorlib.dll properly.
+
+class M {
+  static p (mutable  x : string) :  void {
+    System.Console.WriteLine (x);
+  }
+
+  static Main () :  void {
+    mutable  arr =    array[ "a", "b", "c" ];
+    System.Array.ForEach (arr, p);
+  }
+}
+
+/*
+BEGIN-OUTPUT
+a
+b
+c
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-209.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-209.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace ClassLibrary3
+{
+	public class Dictionary1[TKey, TValue] : Dictionary[TKey, TValue]
+	{ }
+
+	public class Test
+	{
+		static Main () :  void
+		{
+			mutable  _D =  Dictionary1();
+			_D.Add(Guid.NewGuid(), "foo");
+		}
+	}
+}
+
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-210.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-210.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,29 @@
+public class Foo[T] where T:Foo[T]
+{
+  public  mutable  n : T;
+
+  public next() :  T
+  {
+     n;
+  }
+}
+ 
+public class Goo : Foo[Goo]
+{
+  public  mutable  x : int;
+}
+ 
+public class Test
+{
+  public static Main() :  void
+  {
+    mutable  x =  Goo();
+    
+    x=x.next();
+  }
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-215.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-215.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,9 @@
+public class R {}
+public class A[T] where T : R {}
+public partial class D : A[R] {}
+class MainClass { public static Main () :  void {} }
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-218.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-218.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,16 @@
+public interface IFoo[T] where T : IFoo[T] { }
+public interface IBaz[T] where T : IFoo[T] { }
+
+class Foo : IFoo[Foo]
+{ }
+
+class X
+{
+	static Main () :  void
+	{ }
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/gtest-friend-01-lib.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/gtest-friend-01-lib.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,59 @@
+// Compiler options: -t:library
+using System;
+using System.Runtime.CompilerServices;
+
+[assembly: InternalsVisibleTo ("gtest-friend-05")]
+[assembly: InternalsVisibleTo ("gtest-friend-06")]
+[assembly: InternalsVisibleTo ("gtest-friend-07")]
+[assembly: InternalsVisibleTo ("gtest-friend-08")]
+
+public class FriendClass
+{
+	// Static members
+	
+	internal static  mutable  StaticFriendField : int;
+	
+	internal static StaticFriendProperty : int {
+		get {
+			 1;
+		}
+	}
+
+	internal static StaticFriendMethod () :  int
+	{
+		 2;
+	}
+
+	// Instance members
+	
+	internal  mutable  InstanceFriendField : int;
+	
+	internal InstanceFriendProperty : int {
+		get {
+			 1;
+		}
+	}
+
+	internal InstanceFriendMethod () :  int 
+	{
+		 2;
+	}
+
+	// Nested classes
+	internal class NestedInternalClass
+	{
+	}
+
+	protected internal class NestedProtectedInternalClass
+	{
+	}
+}
+
+//
+// This is an internal class
+//
+class InternalFriendClass
+{
+}
+
+

Added: nemerle/trunk/ncc/testsuite/frommcs/test-38.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-38.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,213 @@
+class X {
+	public  mutable  v1 : int;
+	public  mutable  v2 : int;
+	 mutable  y : int;
+	
+	public Item [mutable  a : int] : int {
+		get {
+			if (a == 0)
+			{
+				 v1;
+			}
+			else
+			{
+				 v2;
+			}
+		}
+
+		set {
+			if (a == 0)
+				v1 = value;
+			else
+				v2 = value;
+		}
+	}
+
+	public Foo () :  int {
+		 8;
+	}
+
+	public Bar : int {
+		get {
+			 y;
+		}
+
+		set {
+			y = value;
+		}
+	}
+}
+
+class Y {
+	public  mutable  v1 : uint;
+	public  mutable  v2 : uint;
+	 mutable  y : uint;
+	
+	public Item [mutable  a : uint] : uint {
+		get {
+			if (a == 0)
+			{
+				 v1;
+			}
+			else
+			{
+				 v2;
+			}
+		}
+
+		set {
+			if (a == 0)
+				v1 = value;
+			else
+				v2 = value;
+		}
+	}
+
+	public Foo () :  uint {
+		 8;
+	}
+
+	public Bar : uint {
+		get {
+			 y;
+		}
+
+		set {
+			y = value;
+		}
+	}
+}
+
+class Test {
+
+	static Main () :  int
+	{
+		mutable  x =  X ();
+		mutable  y =  Y ();
+		mutable  b = 0;
+
+		x [0] =({  x [1] = 1;  x [1] });
+		x [0] = 1;
+		if (x.v1 != 1)
+		{
+			 1;
+		}
+		else
+	{
+	{
+
+		if (x [0] != 1)
+
+		{
+			 2;
+
+		}
+
+		else
+	{
+	{
+
+		mutable  d = 0 : double;
+		mutable  l = 0 : long;
+
+		d =({  l =({  b =({  x [0] =({  x [1] =({  x.Bar =({  x [2] =({  x [3] =({  x [4] = x.Foo ();  x [4] });  x [3] });  x [2] });  x.Bar });  x [1] });  x [0] });  b });  l });
+
+		if (x.Bar != 8)
+
+		{
+			 3;
+
+		}
+
+		else
+	{
+	{
+
+		if (l != 8)
+
+		{
+			 4;
+
+		}
+
+		else
+	{
+	{
+
+		mutable  e = 0 : uint;
+
+		mutable  f = 0 : uint;
+		e = 5;
+		e =({  f = 8;  f });
+
+		if (e != 8)
+
+		{
+			 5;
+
+		}
+
+		else
+	{
+	{
+
+		y [0] =({  y [1] = 9;  y [1] });
+		y [0] =({  y.Bar = 12;  y.Bar });
+
+		if (y.Bar != 12)
+
+		{
+			 6;
+
+		}
+
+		else
+	{
+	{
+
+		y.Bar = 15;
+		if (y.Bar != 15)
+		{
+			 7;
+		}
+		else
+	{
+	{
+
+		 0;
+		
+	}
+		
+	}
+		
+	}
+		
+	}
+		
+	}
+		
+	}
+		
+	}
+		
+	}
+		
+	}
+		
+	}
+		
+	}
+		
+	}
+		
+	}
+		
+	}
+		
+	}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-441.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-441.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,20 @@
+// Compiler options: 
+
+using System;
+class Test
+{
+	static  mutable  value : ulong = 0;
+
+	public static Main () :  void
+	{
+		when (value < 9223372036854775809)
+			Console.WriteLine ();
+	}
+}
+
+
+/*
+BEGIN-OUTPUT
+
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-445.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-445.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,30 @@
+using System;
+
+public class ConvFromInt {
+	public  mutable  val : int;
+	public this () { val = 0; }
+	public this (mutable  value : int) { val = value + 1; }
+	public static @: ( value : int) :  ConvFromInt {   ConvFromInt (value); }
+}
+
+public class Foo
+{
+	public static  mutable  i : ConvFromInt = 0;
+	public static  mutable     BoolObj : object = ( false :> bool);
+	public static  mutable     ByteObj : object = ( 0 :> byte);
+	public static  mutable  BoolVal : ValueType = ( false :> bool);
+
+	public static Main () :  void
+	{
+		when (i == null) throw  Exception ("i");
+		when (i.val == 0) throw  Exception ("i.val");
+		when (BoolObj == null) throw  Exception ("BoolObj");
+		when (ByteObj == null) throw  Exception ("ByteObj");
+		when (BoolVal == null) throw  Exception ("BoolVal");
+	}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-447.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-447.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,33 @@
+using System;
+
+[assembly:CLSCompliant(true)]
+
+namespace System {
+	[AttributeUsage (AttributeTargets.All, AllowMultiple=true)]
+	internal sealed class MonoTODOAttribute : Attribute {
+
+		 mutable  comment : string;
+		
+		public this ()
+		{
+		}
+	}
+
+}
+
+namespace System.Web
+{
+	public partial class HttpBrowserCapabilities {
+
+		[MonoTODO] public A : Version {
+			get { throw  Exception (); }
+		}
+	}
+}
+
+class Test { static Main () :  void { } }
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-448.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-448.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,18 @@
+using System;
+
+public class MonoDivideProblem
+{
+	static  mutable  dividend : uint = 0x80000000;
+	static  mutable  divisor : uint = 1;
+	public static Main(_ :  array [string]) :  void
+	{
+		Console.WriteLine("Dividend/Divisor = {0}", dividend/divisor);
+	}
+
+}
+
+/*
+BEGIN-OUTPUT
+Dividend/Divisor = 2147483648
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-451.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-451.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,19 @@
+using System;
+
+enum Foo { | foo };
+
+public class Test
+{
+        static Main () :  void
+        {
+                mutable  _vt = ( 1 :> ValueType);
+		mutable  _ic = ( 1 :> IComparable);
+
+		mutable  _e = ( Foo.foo :> Enum); ();
+        }
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-452.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-452.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,18 @@
+class Foo
+{
+        static public  mutable  x : Foo; // W: field `Foo.x' is never assigned to
+}
+
+class Test
+{
+        static Main () :  void
+        {
+                mutable  Foo = Nemerle.Extensions.DefaultValue (Foo);
+		Foo = Foo.x;
+        }
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-453.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-453.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,22 @@
+using System;
+
+class C {
+	internal enum Flags {
+		| Removed	= 0
+		| Public	= 1
+	}
+
+	static  mutable 	_enumFlags : Flags; // W: field `C._enumFlags' is never assigned to
+		
+	public static Main() :  void
+	{
+		when ((Flags.Removed %| 0).ToString () != "Removed")
+			throw  ApplicationException ();
+	}
+}
+
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-455.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-455.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,20 @@
+struct Foo {
+	public  mutable  x : int;
+	public override GetHashCode () :  int
+	{
+		 base.GetHashCode ();
+	}
+}
+
+class Test {
+	static Main () :  void
+	{
+		mutable  foo =  Foo ();
+		_ = foo.GetHashCode ();
+	}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-458.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-458.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,34 @@
+// test-458.cs : for bug #75723
+using System;
+
+
+// The attribute
+internal class MyAttr : Attribute {
+  internal this() { }
+  internal this(mutable  _type_ : Type) { }
+  internal this(mutable  _name : string) { }
+  internal this(mutable  _i : int) { }
+}
+
+// The Classes
+[MyAttr()]
+internal class ClassA  { }
+
+[MyAttr(typeof(string))]
+internal class ClassB  { }
+
+[MyAttr("abc")]
+internal class ClassC  { }
+
+[MyAttr(3)]
+internal class ClassD  { }
+
+// Just to compile
+internal class Top  { 
+  public static Main (_ :  array [string]) :  void{}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-459.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-459.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,49 @@
+using System;
+
+class CC {
+	
+	public class IfElseStateMachine {
+			
+			public enum State {
+			| START
+			| IF_SEEN
+			| ELSEIF_SEEN
+			| ELSE_SEEN
+			| ENDIF_SEEN
+			| MAX
+			}
+		
+			public enum Token {
+			| START
+			| IF
+			| ELSEIF
+			| ELSE
+			| ENDIF
+			| EOF
+			| MAX
+			}
+
+			 mutable  state : State;
+			public this()
+			{
+			}
+
+			public HandleToken(mutable  tok : Token) :  void
+			{	
+				when(tok == Token.IF) {
+					state = ( tok :> State);
+				}
+			}
+		}
+		
+		public static Main () :  int 
+		{
+			 IfElseStateMachine ().HandleToken (IfElseStateMachine.Token.IF);
+			 0;
+		}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-461.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-461.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,53 @@
+using System;
+
+public enum ArrowType {
+	| Up
+	| Down
+	| Left
+	| Right
+}
+
+public struct Value {
+	public this (_ : object) {
+	}
+	
+	public Val : object {
+		get {
+			 ArrowType.Left;
+		}
+	}
+	
+	public Val2 : Enum {
+		get {
+			 ArrowType.Down;
+		}
+	}
+}
+	
+public class Valtest {
+	public static Main () :  int {
+		mutable  val = Nemerle.Extensions.DefaultValue (Value);
+		mutable _i = (val.Val2 :> ArrowType);
+		
+		if (((val.Val :> Enum) :> ArrowType) != ArrowType.Left)
+		
+		{
+			 1;
+		
+		}
+		
+		else { {
+
+		Console.WriteLine ("OK");
+		 0;
+	}
+	}
+	}
+}
+
+
+/*
+BEGIN-OUTPUT
+OK
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-462.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-462.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,34 @@
+class X {
+	 mutable  ok : bool = false;
+	
+	 Method (_ : X) : void
+	{
+	}
+
+	 Method (_ : string) : void
+	{
+		ok = true;
+	}
+
+	static Main () :  int
+	{
+		mutable  x =  X ();
+
+		x.Method (( null :> string));
+		if (x.ok)
+		{
+			 0;
+		}
+		else
+	{
+	{
+		 1;
+	}
+	}
+	}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-463.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-463.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,19 @@
+using System.ComponentModel;
+
+public class PropertySorter : ExpandableObjectConverter {
+}
+
+[TypeConverter(typeof(PathItemBase.TypeConverter))]
+class PathItemBase {
+	internal class TypeConverter : PropertySorter {
+	}
+}
+
+class X {
+	static Main () :  void {}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-467.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-467.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,47 @@
+using System;
+
+public class ExceptionWithAnonMethod
+{
+	public delegate EmptyCallback() :  void;
+    	static  mutable  res : string;
+	
+	public static Main() :  int
+	{
+		try {
+			throw  Exception("e is afraid to enter anonymous land");
+		} catch {
+                  |  e is Exception =>  {
+			AnonHandler(fun() {
+				Console.WriteLine(e.Message); 
+				res = e.Message;
+			});
+		} }
+		if (res == "e is afraid to enter anonymous land")
+		{{
+		    Console.WriteLine ("Test passed");
+		     0;
+		}
+		}
+		else
+	{
+	{
+		Console.WriteLine ("Test failed");
+		 1;
+	}
+	}
+	}
+
+	public static AnonHandler(mutable  handler : EmptyCallback) :  void
+	{
+		when(handler != null) {
+			handler();
+		}
+	}
+}
+
+/*
+BEGIN-OUTPUT
+e is afraid to enter anonymous land  
+Test passed  
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-470.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-470.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,24 @@
+// This code must be compilable without any warning
+// Compiler options:  -warn:4
+
+class X
+{
+	public ASTNodeTypeName : string
+	{
+		get 
+		{ 
+			 typeof(int).FullName; 
+		}
+	}
+}
+
+class Demo {
+	static Main () :  void
+	{
+	}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-471.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-471.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,19 @@
+// Compiler options: /doc:test-471.xml
+
+using System;
+
+/// <summary><see cref="AAttribute" /></summary>
+[Obsolete("whatever", true)]
+public class AAttribute : Attribute {
+}
+
+class Demo {
+	static Main () :  void
+	{
+	}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-472.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-472.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,44 @@
+using System;
+using System.Reflection;
+
+class Test
+{
+        public Prop : int {
+                get {  prop; }
+                set { prop = value; }
+        }
+
+         mutable  prop : int = 0;
+
+        static Main() :  int
+        {
+                mutable  mi = typeof (Test).GetMethod ("set_Prop");
+                if (mi.GetParameters ().Length != 1)
+                {
+					 1;
+                }
+                else
+        {
+        {
+				if ((mi.GetParameters ()[0].Name) != "value")
+				{
+					 2;
+				}
+				else
+        {
+        {
+				
+				Console.WriteLine ("OK");
+				 0;
+        }
+        }
+        }
+        }
+        }
+}
+
+/*
+BEGIN-OUTPUT
+OK  
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-477.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-477.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,14 @@
+// Compiler options: 
+
+class C
+{
+	[System.Diagnostics.Conditional("DEBUG")]
+	public Test (mutable  _i : ref int) :  void {}
+
+	public static Main () :  void {}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-478.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-478.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,32 @@
+using System;
+using System.ComponentModel;
+using System.ComponentModel.Design;
+
+namespace Test {
+	class MainClass {
+		public static Main() :  void {}
+	}
+
+	[Test(TestEnum2.TestValue)]
+	enum TestEnum {
+		| Value
+	}
+
+	class TestAttribute : Attribute {
+		public this(_ :  TestEnum2 ) {
+		}
+	}
+	
+	class Test2Attribute : Attribute {
+	}
+	
+	enum TestEnum2 {
+		[Test2]
+		| TestValue
+	}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-479.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-479.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,17 @@
+namespace Test{  
+    public partial class Test{  
+	public override Equals(_ : object) :  bool{  
+	     true;  
+	}  
+	  
+	public override GetHashCode() :  int{  
+	     1;  
+	}
+	static Main () :  void {}
+    }  
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-60.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-60.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,64 @@
+//
+// Really lame test, but it should be fine for now
+//
+#define TEST
+
+#region
+#endregion
+
+#if FLAG_FALSE
+
+#else
+        #if FLAG_FALSE
+                        #if FLAG_FALSE
+        namespace ns1
+                        #else
+
+                        #endif
+        #else
+                #if FLAG_TRUE
+                                namespace ns3
+                #else
+
+                #endif
+        #endif
+#endif
+                        namespace ns5{
+        public class Y
+        {
+                public this()
+                {
+                }
+
+		public Run () :  void {}
+        }
+}
+
+#if (X)
+#endif
+
+#if YY
+//#errro this should not be printed // It used to compile under 1.x csc, but never under 2.x csc.
+#if X
+#elif Y
+#else
+#endif
+#else
+class X {
+#if (TEST)
+
+#endif
+
+	static Main () :  int
+	{		mutable  y =  ns5.Y ();
+
+		y.Run ();
+		 0;	}
+}
+#endif
+
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-anon-32.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-anon-32.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,28 @@
+public delegate StringSender (mutable  str : string) :  void;
+public delegate VoidDelegate () :  void;
+
+public class MainClass
+{
+	public static Main() :  void
+	{
+		mutable  mc =  MainClass ();
+		mutable  del =  VoidDelegate (fun() {
+			mutable  ss = fun ( s : string) {
+				SimpleCallback(mc, s);
+			};
+			ss("Yo!");
+		});
+		del();
+	}
+
+	static SimpleCallback (_mc : MainClass,mutable  str :  string) :  void
+	{
+		System.Console.WriteLine(str);
+	}
+}
+
+/*
+BEGIN-OUTPUT
+Yo!  
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-externalias-00-lib.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-externalias-00-lib.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,87 @@
+// Compiler options: -t:library
+using System;
+
+public class GlobalClass
+{
+	public InstanceMethod () :  int
+	{
+		 1;
+	}
+	
+	public static StaticMethod () :  int
+	{
+		 1;
+	}
+
+	public static JustForFirst () :  void
+	{
+	}
+}
+
+namespace Namespace1 
+{
+	public class MyClass1
+	{
+		public InstanceMethod () :  int
+		{
+			 1;
+		}
+		
+		public static StaticMethod () :  int
+		{
+			 1;
+		}
+		
+		public class MyNestedClass1
+		{
+			public InstanceMethod () :  int
+			{
+				 1;
+			}
+
+			public static StaticMethod () :  int
+			{
+				 1;
+			}
+		}
+
+		public static JustForFirst () :  void
+		{
+		}
+	}
+
+	namespace Namespace2
+	{
+		public class MyClass2
+		{
+			public class MyNestedClass2
+			{
+				public InstanceMethod () :  int
+				{
+					 1;
+				}
+
+				public static StaticMethod () :  int
+				{
+					 1;
+				}
+			}
+			
+			public InstanceMethod () :  int
+			{
+				 1;
+			}
+			
+			public static StaticMethod () :  int
+			{
+				 1;
+			}
+			
+			public static JustForFirst () :  void
+			{
+			}
+		}
+
+	}
+}
+

Added: nemerle/trunk/ncc/testsuite/frommcs/test-externalias-01-lib.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-externalias-01-lib.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,90 @@
+// Compiler options: -t:library
+
+using System;
+
+public class GlobalClass
+{
+	public InstanceMethod () :  int
+	{
+		 2;
+	}
+	
+	public static StaticMethod () :  int
+	{
+		 2;
+	}
+
+	public static JustForSecond () :  void
+	{
+	}
+}
+
+namespace Namespace1 
+{
+	public class MyClass1
+	{
+		public InstanceMethod () :  int
+		{
+			 2;
+		}
+		
+		public static StaticMethod () :  int
+		{
+			 2;
+		}
+		
+		public class MyNestedClass1
+		{
+			public InstanceMethod () :  int
+			{
+				 2;
+			}
+
+			public static StaticMethod () :  int
+			{
+				 2;
+			}
+		}
+
+		public static JustForSecond () :  void
+		{
+		}
+	}
+
+	namespace Namespace2
+	{
+		public class MyClass2
+		{
+			public class MyNestedClass2
+			{
+				public InstanceMethod () :  int
+				{
+					 2;
+				}
+
+				public static StaticMethod () :  int
+				{
+					 2;
+				}
+			}
+			
+			public InstanceMethod () :  int
+			{
+				 2;
+			}
+			
+			public static StaticMethod () :  int
+			{
+				 2;
+			}
+
+			public static JustForFirst () :  void
+			{
+			}
+		}
+
+	}
+}
+
+
+

Added: nemerle/trunk/ncc/testsuite/frommcs/test-xml-039.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-xml-039.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,24 @@
+// Compiler options: -doc:xml-039.xml 
+using System;
+
+/// <summary>
+/// <see cref="ITest.Start" />
+/// <see cref="ITest.Foo" />
+/// </summary>
+public interface ITest {
+        /// <summary>whatever</summary>
+        event Start :  EventHandler;
+	/// <summary>hogehoge</summary>
+	 Foo : int { get; }
+}
+
+class Test
+{
+	public static Main () :  void {}
+}
+
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-xml-040.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-xml-040.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,20 @@
+// Compiler options: -doc:xml-040.xml  -warn:4
+// OPTIONS: /doc
+using System.Collections;
+
+/// <summary><see cref="IDictionary.this[object]" /></summary>
+public class Test {
+	static Main () :  void {
+	}
+
+	/// <summary> test indexer doc </summary>
+	public Item [mutable  _name : string] : string {
+		get {  null; }
+	}
+}
+
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-xml-041.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-xml-041.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,25 @@
+// Compiler options: -doc:xml-042.xml  -warn:4
+// OPTIONS: /doc:a.xml
+
+/// <summary />
+public class EntryPoint
+{
+  static Main() :  void
+  {
+  }
+
+  /// <summary>
+  /// <see cref="Decide(int)" />
+  /// </summary>
+  private class A
+  {
+    public virtual Decide(_a : int) :  void
+    {
+    }
+  }
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-xml-042.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-xml-042.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,25 @@
+using System;
+
+namespace TestNamespace
+{
+    /// <summary>
+    /// <see cref="FunctionWithParameter" />
+    /// </summary>
+    class TestClass
+    {
+	public static Main () :  void {}
+	/// <summary>
+	/// Function with wrong generated parameter list in XML documentation. There is missing @ after System.Int32
+	/// </summary>
+	public FunctionWithParameter(mutable  number :  ref int,mutable  num2 :  out int) :  void
+	{
+	    num2 = 0;
+	    number = 1;
+	}
+    }
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-xml-043.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-xml-043.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,33 @@
+// Compiler options: -doc:xml-043.xml  -warn:4
+// OPTIONS: /doc:a.xml
+
+/// <summary />
+public class EntryPoint
+{
+  static Main() :  void
+  {
+  }
+
+  private class A
+  {
+    public virtual Decide(mutable  _a : int) :  void
+    {
+    }
+  }
+
+  /// <summary>
+  /// <see cref="Decide (int)" />
+  /// </summary>
+  private class B : A
+  {
+    public override Decide(mutable  _a : int) :  void
+    {
+    }
+  }
+}
+
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-xml-044.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-xml-044.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,32 @@
+// Compiler options: -doc:xml-044.xml  -warn:4
+// OPTIONS: /doc:a.xml
+
+using System.Xml;
+
+/// <summary />
+public class EntryPoint
+{
+  static Main() :  void
+  {
+  }
+
+  /// <summary>
+  /// <see cref="M:EntryPoint.B.Decide(System.Int32)" />
+  /// </summary>
+  internal class A
+  {
+    public virtual Decide(mutable  _a : int) :  void
+    {
+    }
+  }
+
+  internal class B : A
+  {
+  }
+}
+
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-xml-045.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-xml-045.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,41 @@
+// Compiler options: -doc:xml-045.xml
+// OPTIONS: /doc:a.xml
+
+/// <summary>
+/// <see cref="Create" />
+/// <see cref="Define" />
+/// <see cref="Undefine" />
+/// <see cref="Undefine(bool)" />
+/// <see cref="Remove" />
+/// <see cref="Destroy" />
+/// </summary>
+public class EntryPoint {
+	static Main () :  void {
+	}
+
+	/// dummy comments
+	protected Create (mutable  _test : bool) :  void {
+		Define (true);
+	}
+
+	private Define (mutable  _test : bool) :  void {
+	}
+
+	/// dummy comments
+	protected Undefine (mutable  _test : bool) :  void {
+	}
+
+	/// dummy comments
+	protected Remove () :  void {
+	}
+
+	/// dummy comments
+	public virtual Destroy (mutable  _test : bool) :  void {
+	}
+}
+
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-xml-046.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-xml-046.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,35 @@
+// Compiler options: -doc:xml-046.xml 
+/// <summary />
+public interface IExecutable {
+	/// <summary />
+	 Execute () : void;
+
+	/// <summary />
+	 Current : object {
+		get; 
+	}
+}
+
+/// <summary>
+/// <see cref="Execute" />
+/// <see cref="Current" />
+/// </summary>
+public class A : IExecutable {
+	static Main () :  void {
+	}
+
+	/// <summary />
+	public Execute () :  void {
+	}
+
+	/// <summary />
+	public Current : object {
+		get {  null; }
+	}
+}
+
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-xml-047.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-xml-047.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,17 @@
+// Compiler options: -doc:xml-047.xml  -warn:4
+
+using System;
+
+/// <summary>
+/// <see cref="bool.GetHashCode" />
+/// </summary>
+public class EntryPoint
+{
+	static Main () :  void {
+	}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-xml-048.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-xml-048.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,35 @@
+// Compiler options: -doc:xml-048.xml 
+/// <summary />
+public class A {
+	static Main () :  void {
+	}
+
+	/// <summary />
+	public virtual Level : string {
+		get {  null; }
+	}
+
+	/// <summary />
+	public virtual Test () :  void {
+	}
+}
+
+/// <summary>
+/// <see cref="Level" />
+/// <see cref="Test" />
+/// </summary>
+public class B : A {
+	/// <summary />
+	public override Level : string {
+		get {  null; }
+	}
+
+	/// <summary />
+	public override Test () :  void {
+	}
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-xml-049.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-xml-049.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,38 @@
+// Compiler options: -doc:xml-049.xml
+// OPTIONS: /doc:a.xml
+
+/// <summary>
+/// </summary>
+public class Testje {
+  static Main () :  void {
+  }
+
+  /// <summary>
+  /// <see cref="Test" />
+  /// <see cref="Format(object)" />
+  /// </summary>
+  private class A {
+    /// <summary>
+    /// <see cref="Test" />
+    /// <see cref="Format(object)" />
+    /// </summary>
+    private class Test {
+    }
+  }
+
+  /// <summary />
+  public Test : string {
+    get {  ""; }
+  }
+
+  /// <summary />
+  public static Format (mutable  _a : object) :  void
+  {
+  }
+}
+
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/

Added: nemerle/trunk/ncc/testsuite/frommcs/test-xml-051.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/ncc/testsuite/frommcs/test-xml-051.n	Sun Dec 18 22:59:46 2005
@@ -0,0 +1,32 @@
+// Compiler options: -doc:xml-051.xml 
+using log4net.Repository.Hierarchy;
+
+namespace log4net
+{
+  /// <summary>
+  /// <see cref="Repository.Hierarchy" />
+  /// </summary>
+  public interface IFoo {}
+}
+
+namespace log4net.Repository {
+  /// <summary>
+  /// <see cref="Hierarchy" />
+  /// <see cref="System.Xml" />
+  /// </summary>
+  public interface ILog {
+  }
+}
+
+namespace log4net.Repository.Hierarchy {
+  /// <summary />
+  public class Hierarchy {
+    static Main () :  void {
+    }
+  }
+}
+
+/*
+BEGIN-OUTPUT
+END-OUTPUT
+*/



More information about the svn mailing list