[Mono-dev] Porting mcs to IKVM.Reflection

Kornél Pál kornelpal at gmail.com
Thu May 6 07:43:54 EDT 2010


Can you please tell when are MakeExpression methods used and whether are 
they required for code generation by mcs? The problem is that SLE 
MakeExpression methods require System.Reflection types. I was unable to 
find out when are MakeExpression methods used so I cannot come up with a 

Thank you.


Kornél Pál wrote:
> Hi,
> Inspired by http://tirania.org/blog/archive/2010/Apr-27.html I gave a 
> try to port mcs to IKVM.Reflection.
> I addition to being able to have a single binary, mcs could run on 
> MS.NET and we would not have to break MS.NET compatibility in 
> System.Reflection.
> I've attached some work in progress patches both for mcs and 
> IKVM.Reflection.
> I was impressed by the result that mcs is able to bootstrap itself, 
> compile mscorlib.dll and its other requirements, and the resulting mcs 
> is able to compile a bunch of Mono assemblies.
> Missing features:
> - security attributes
> - embedded resources
> - .netmodule support
> - debug info
> Also note that I was unable to figure out what MakeExpression methods 
> are supposed to do but I had to disable them because they need 
> System.Reflection types.
> mcs pathes are licensed under the MIT/X11 license.
> IKVM.Reflection patches are licensed under the zlib license.
> Kornél

More information about the Mono-devel-list mailing list