[Mono-list] self-hosting assemblies status update

Paolo Molaro lupus@ximian.com
Fri, 21 Jun 2002 16:46:04 +0200

On 06/21/02 Martin Baulig wrote:
> > On 06/16/02 Piers Haken wrote:
> > > what's the status on building corlib with mono? last time I looked there
> > > were some pretty tricky problems to work around, has any progress been
> > > made on this? it's definitely one of the last major barriers to full
> > > self-hosting.
> > 
> > The System assembly is basically done, the only blocker seems to be
> > http://bugzilla.ximian.com/show_bug.cgi?id=26223.
> Hmm, the latest comment in Bugzilla says
Yes, it has been fixed after I mailed about it.

The current status is:
	we get a nullref while emitting code for this in Array.cs:
	int ICollection.Count {
		get {
			return Length;

instance_expr ends up null in Mono.CSharp.PropertyExpr.Emit (Mono.CSharp.EmitContext)
Maybe miguel knows why instance_expr may end up null here.

System: compiles
	Still some issues in the generated code (see below) and
	some errors caused by problems in our reflection.

System.Data: compiles

System.Drawing: compiles

System.Web: compiler issue:

	hits several times the nice hello message from the compiler at:
	attribute.cs:149:				Console.WriteLine ("HELLO");

It then gets a few warnings regarding custom attribute emission because
it passes a null 1-item array as the constructor arguments for the
System.ComponentModel.DefaultValueAttribute attribute. A binary is
produced, though, with a few PEVerify errors that don't look serious.

The code generated in the assemblies has still a few issues in places:
Once this two compiler bugs have been fixed I think we can start
distributing the assemblies built on Linux instead of with csc
(all but the holy grail, corlib).

Anyway, we made quite a progress in the last few days!
We should be able to start building the assemblies daily to catch
regressions and maybe also start running the test suite against them.


lupus@debian.org                                     debian/rules
lupus@ximian.com                             Monkeys do it better