[Mono-bugs] [Bug 21083] New - Undefined interface base type

bugzilla-daemon@rocky.ximian.com bugzilla-daemon@rocky.ximian.com
26 Feb 2002 17:49:16 -0000


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by f_ai@hotmail.com.

http://bugzilla.ximian.com/show_bug.cgi?id=21083

--- shadow/21083	Tue Feb 26 12:49:16 2002
+++ shadow/21083.tmp.13521	Tue Feb 26 12:49:16 2002
@@ -0,0 +1,54 @@
+Bug#: 21083
+Product: Mono/MCS
+Version: unspecified
+OS: 
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: 
+Priority: Normal
+Component: Misc
+AssignedTo: mono-bugs@ximian.com                            
+ReportedBy: f_ai@hotmail.com               
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: Undefined interface base type
+
+Description of Problem:
+If the fully qualified name of the base type is not used when defining an 
+interface, then the 'Type' is not found and the interface declaration 
+fails.
+
+More details:
+Interface.GetInterfaceBases calls Interface.GetInterfaceTypeByName will 
+all the bases if the interface.
+Interface.GetInterfaceTypeByName calls RootContext.TypeManager.LookupType 
+with the 'base name' but this method only looks for the exact name.
+I think that if we change Interface.GetInterfaceTypeByName to call
+RootContext.LookupType(this, name, false, Location) and not 
+RootContext.TypeManager.LookupType(name) i'll be fine.
+
+Additional Information:
+Using snapshot of Feb-25-02
+
+Source code to reproduce the problem:
+
+namespace N1
+{	
+	public interface A
+	{
+		void method();
+	}
+
+	public interface B: N1.A //<- this works
+	{
+		void method2();
+	}		
+
+	public interface C: A //<- this fails
+	{
+		void method2();
+	}		
+}