internal Type corlib_object_type = typeof (System.Object);
internal Type corlib_value_type = typeof (System.ValueType);
internal Type corlib_enum_type = typeof (System.Enum);
+ internal Type corlib_void_type = typeof (void);
private int[] table_indexes;
Hashtable us_string_cache = new Hashtable ();
this.corlib_enum_type = corlib_enum_type;
}
+ public void SetCorlibTypeBuilders (Type corlib_object_type, Type corlib_value_type, Type corlib_enum_type, Type corlib_void_type)
+ {
+ SetCorlibTypeBuilders (corlib_object_type, corlib_value_type, corlib_enum_type);
+ this.corlib_void_type = corlib_void_type;
+ }
+
private Exception not_supported () {
// Strange message but this is what MS.NET prints...
return new NotSupportedException ("The invoked member is not supported in a dynamic module.");
+2003-05-18 Martin Baulig <martin@ximian.com>
+
+ * AssemblyBuilder.cs (corlib_void_type): New internal field.
+ (SetCorlibTypeBuilders): Added overloaded version which takes 4
+ arguments to set the `corlib_void_type'.
+
+ * TypeBuilder.cs: Use `pmodule.assemblyb.corlib_void_type' instead
+ of `typeof (void)' to make this work when compiling corlib.
Thu May 15 19:16:54 CEST 2003 Paolo Molaro <lupus@ximian.com>
throw new ArgumentException ("attributes", "Interface method must be abstract and virtual.");
if (returnType == null)
- returnType = typeof (void);
+ returnType = pmodule.assemblyb.corlib_void_type;
MethodBuilder res = new MethodBuilder (this, name, attributes, callingConvention, returnType, parameterTypes);
append_method (res);
return res;