[IronPython] Pyc in IronPython 2.6
Dino Viehland
dinov at microsoft.com
Tue Aug 18 19:33:57 CEST 2009
Compile on 64-bit? :)
I have a guess of what the problem is here but I haven't run a test to
Confirm. I recently ran into a similar issue when I increased the
number of constants we were generating - except for I was just trying
to pre-compile a single file.
If you want to build from source you can modify ToDiskRewriter.cs to add a
new member variable:
private Dictionary<ConstantExpression, Expression> _constantCache;
And then in VisitConstant replace:
Expression serialized = exprSerializable.CreateExpression();
_constants.Add(serialized);
return AstUtils.Convert(
Expression.ArrayAccess(_constantPool, AstUtils.Constant(_constants.Count - 1)),
serialized.Type
);
With:
Expression res;
if (!_constantCache.TryGetValue(node, out res)) {
Expression serialized = exprSerializable.CreateExpression();
_constants.Add(serialized);
_constantCache[node] = res = AstUtils.Convert(
Expression.ArrayAccess(_constantPool, AstUtils.Constant(_constants.Count - 1)),
serialized.Type
);
}
return res;
and then add:
_constantCache = new Dictionary<ConstantExpression, Expression>();
To EnsureConstantPool()
If that doesn't work, or you don't want to build from source, I'll attempt to repro it and see what's going on.
> -----Original Message-----
> From: users-bounces at lists.ironpython.com [mailto:users-
> bounces at lists.ironpython.com] On Behalf Of Glenn Jones
> Sent: Tuesday, August 18, 2009 5:31 AM
> To: users at lists.ironpython.com
> Subject: [IronPython] Pyc in IronPython 2.6
>
> Hi guys,
>
> I have just created a ticket
> http://ironpython.codeplex.com/WorkItem/View.aspx?WorkItemId=24362,
> but I was wondering if there was anything obvious that I could do to
> get this working.
>
> Thanks
> Glenn
> _______________________________________________
> Users mailing list
> Users at lists.ironpython.com
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
More information about the Ironpython-users
mailing list