[IronPython] IronPython 2.0 Alpha 1 on Mono

Sanghyeon Seo sanxiyn at gmail.com
Wed May 2 03:22:00 PDT 2007


Here's my first try on building IronPython 2.0 Alpha 1 on Mono:
https://fepy.svn.sourceforge.net/svnroot/fepy/trunk/patches/2.0a1/

First, get Mono from SVN, revision later than 76552. Because of an
oversight, Mono's C# compiler (actually parser) didn't allow
attributes in parameters of operator methods. Namely:

"public static object operator >([NotNull]OldInstance self, object
other)" was rejected. This is now fixed.

1. patch-makefile
Spaces to tabs. Backward slashes to forward slashes. csc to gmcs.
Also, add missing System.Configuration.dll reference.

2. patch-81500
Mono's C# compiler currently doesn't compile the expressions of the
form 'obj as string ?? ""', where "as" operator associates more
strongly than "??" operator. This is Mono bug #81500.
http://bugzilla.ximian.com/show_bug.cgi?id=81500

patch-81500 workarounds this bug by parenthesizing all such
expressions in the IronPython 2.0 Alpha 1 source code.

3. patch-delegate-conversion
Mono's C# compiler currently doesn't handle implicit standard delegate
conversion from DefaultNameTransform to ExtensionNameTransformer in
ReflectedTypeBuilder.cs. My workaround is to explicitly declare the
delegate and assign later.

After these, gmcs crashes inside Mono runtime with backtrace pointing
to custom attribute resolution. Still investigating, but above three
patches should help anyone trying to dig this on their own together
with me. :)

Good luck!

-- 
Seo Sanghyeon


More information about the users mailing list