Index: trunk/TestCase/SimpleTestCase/InterfaceTest.ab
===================================================================
--- trunk/TestCase/SimpleTestCase/InterfaceTest.ab	(revision 396)
+++ trunk/TestCase/SimpleTestCase/InterfaceTest.ab	(revision 397)
@@ -9,4 +9,9 @@
 	Function Proc5() As String
 	Function Proc6( value As String ) As Boolean
+End Interface
+
+Interface IGenericTest<T>
+	Function GenericProc1() As T
+	Function GenericProc2( value As T ) As Boolean
 End Interface
 
@@ -31,5 +36,5 @@
 
 Class Test2
-	Implements ITest1, ITest2
+	Implements ITest1, ITest2, IGenericTest<String>
 
 	a As Long
@@ -54,4 +59,12 @@
 	Override Function Proc6( value As String ) As Boolean
 		Return ( value = ( "Proc6 calling" + a.ToString() ) )
+	End Function
+
+	Function GenericProc1() As String
+		Return "GenericProc1 is ok"
+	End Function
+
+	Function GenericProc2( value As String ) As Boolean
+		Return ( value = "GenericProc2 calling" )
 	End Function
 End Class
@@ -96,4 +109,10 @@
 	GlobalProc2( test2, test2, 1 )
 	GlobalProc2( Nothing, itest2, 2 )
+
+	Dim iGenericTest As IGenericTest<String>
+	iGenericTest = test2 As IGenericTest<String>
+	UnitTest( "Interface ... calling class2 interface 3", iGenericTest.GenericProc1() = "GenericProc1 is ok" )
+
+	UnitTest( "Interface ... calling class2 interface 4", iGenericTest.GenericProc2( "GenericProc2 calling" ) )
 End Sub
 
