Martin got GMCS to work on Windows, with a small caveat -- there's no API to change the MethodAttributes of a MethodBuilder. I have a couple of observations: the caveat isn't really a big deal. You only need to set NewSlot when there is a new keyword used in the declaration. Otherwise, it's useful but not necessary (See bug 74852 for the gory details) these changes, coupled with my older changes should allow us to have more code similarity between MCS and GMCS. Specifically, I think we can put in a couple of stubs: DropGenericTypeArguments and DropGenericMethodArguments into MCS and eliminate a big part of the textual differences between MCS and GMCS in non-generics related code. We already started on this in doc.cs
Ramblings of an Idiot with a PhD
MCS: Implemented ::-lookup (qualified alias member) feature
Today, I added my first "tick-mark" feature to Mono's C# compiler:
qualified-alias-member or '::' lookup. It's a relatively small
feature, and doesn't impact much, code-wise.
In all, it took about a day's worth of effort from start to check-in. But, that one-day effort needed quite some preparatory work. I'd pretty much decided on the approach a couple of months ago, and had a reasonable plan-of-attack, and was looking for an opportune time to work on it. More importantly, the past few months I spent incessantly refactoring the name- and type-lookup facilities in the compiler has paid off, making the task of implementing '::' trivial.