Hi, I''ve created an irc.rb (attached) which mimics
IronPython''s pyc.py. It
is failing on this line:
Microsoft::Scripting::ScriptCode.save_to_assembly(outfile, codes.to_array())
With the following exception... Any help would be greatly appreciated. The
test file I''m trying to compile is also attached. I am building on
revision
140. I have also tried with the Microsoft.Scripting and
Microsoft.Scripting.Core dlls from IronPython with the same result.
C:\work\ironruby\co\svn\trunk\build\release>.\ir.exe irc.rb -target:dll
-verbose test.rb
Compiling C:\work\ironruby\co\svn\trunk\build\release\test.rb...
Creating output file C:\work\ironruby\co\svn\trunk\build\release\test.dll...
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\NewExpression
.cs:88:in `New'': Value cannot be null.
Parameter name: constructor (System::ArgumentNullException)
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\NewExpression
.cs:83:in `New''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:294:in `DefaultVisitDynamicExpression''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:191:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:40:in `VisitNodes''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:108:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:264:in `DefaultVisitBlock''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:176:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:40:in `VisitNodes''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:108:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:264:in `DefaultVisitBlock''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:176:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:40:in `VisitNodes''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:108:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:264:in `DefaultVisitBlock''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:176:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:40:in `VisitNodes''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:108:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:264:in `DefaultVisitBlock''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:176:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:272:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:374:in `DefaultVisitScopeExpression''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:218:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:189:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Actions\MatchCall
er.Generated.cs:40:in `Call4''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Actions\CallSite.
cs:275:in `UpdateAndExecute''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Actions\UpdateDel
egates.Generated.cs:52:in `Update4''
from :0
-------------- next part --------------
A non-text attachment was scrubbed...
Name: irc.rb
Type: application/octet-stream
Size: 3462 bytes
Desc: not available
URL:
<http://rubyforge.org/pipermail/ironruby-core/attachments/20080905/49852760/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: test.rb
Type: application/octet-stream
Size: 314 bytes
Desc: not available
URL:
<http://rubyforge.org/pipermail/ironruby-core/attachments/20080905/49852760/attachment-0001.obj>
Right. This is the error Dino overheard me talking about :) As you can see from
the stack trac, something seems to be broken in DLR. I''ll look at it
and see whether I can come with a simple fix. Precompilation is currently P2 on
our task list though, so I''m afraid any more complex work would need to
wait until P1''s are done.
Tomas
-----Original Message-----
From: users-bounces at lists.ironpython.com [mailto:users-bounces at
lists.ironpython.com] On Behalf Of KE
Sent: Friday, September 05, 2008 5:24 PM
To: IronRuby
Cc: IronPython
Subject: [IronPython] irc.rb
Hi, I''ve created an irc.rb (attached) which mimics
IronPython''s pyc.py. It is failing on this line:
Microsoft::Scripting::ScriptCode.save_to_assembly(outfile, codes.to_array())
With the following exception... Any help would be greatly appreciated. The test
file I''m trying to compile is also attached. I am building on revision
140. I have also tried with the Microsoft.Scripting and Microsoft.Scripting.Core
dlls from IronPython with the same result.
C:\work\ironruby\co\svn\trunk\build\release>.\ir.exe irc.rb -target:dll
-verbose test.rb Compiling
C:\work\ironruby\co\svn\trunk\build\release\test.rb...
Creating output file C:\work\ironruby\co\svn\trunk\build\release\test.dll...
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\NewExpression
.cs:88:in `New'': Value cannot be null.
Parameter name: constructor (System::ArgumentNullException)
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\NewExpression
.cs:83:in `New''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:294:in `DefaultVisitDynamicExpression''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:191:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:40:in `VisitNodes''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:108:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:264:in `DefaultVisitBlock''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:176:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:40:in `VisitNodes''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:108:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:264:in `DefaultVisitBlock''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:176:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:40:in `VisitNodes''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:108:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:264:in `DefaultVisitBlock''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:176:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:40:in `VisitNodes''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:108:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:264:in `DefaultVisitBlock''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:176:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:272:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:374:in `DefaultVisitScopeExpression''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:218:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:189:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Actions\MatchCall
er.Generated.cs:40:in `Call4''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Actions\CallSite.
cs:275:in `UpdateAndExecute''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Actions\UpdateDel
egates.Generated.cs:52:in `Update4''
from :0
Thanks! I''ve also created a bug report:
http://rubyforge.org/tracker/index.php?func=detail&aid=21839&group_id=4359&a
tid=16798
This includes the irc.rb which I think IronRuby will be interested in
including in the IronRuby distribution as well..
I''ll try to step through into this bug and understand what''s
going on,
although I have no clue what I''m looking at :)
Thanks,
-----Original Message-----
From: Tomas Matousek [mailto:Tomas.Matousek at microsoft.com]
Sent: Saturday, September 06, 2008 12:49 AM
To: hellosticky at gmail.com; Discussion of IronPython; IronRuby
Subject: RE: [IronPython] irc.rb
Right. This is the error Dino overheard me talking about :) As you can see
from the stack trac, something seems to be broken in DLR. I''ll look at
it
and see whether I can come with a simple fix. Precompilation is currently P2
on our task list though, so I''m afraid any more complex work would need
to
wait until P1''s are done.
Tomas
-----Original Message-----
From: users-bounces at lists.ironpython.com
[mailto:users-bounces at lists.ironpython.com] On Behalf Of KE
Sent: Friday, September 05, 2008 5:24 PM
To: IronRuby
Cc: IronPython
Subject: [IronPython] irc.rb
Hi, I''ve created an irc.rb (attached) which mimics
IronPython''s pyc.py. It
is failing on this line:
Microsoft::Scripting::ScriptCode.save_to_assembly(outfile, codes.to_array())
With the following exception... Any help would be greatly appreciated. The
test file I''m trying to compile is also attached. I am building on
revision
140. I have also tried with the Microsoft.Scripting and
Microsoft.Scripting.Core dlls from IronPython with the same result.
C:\work\ironruby\co\svn\trunk\build\release>.\ir.exe irc.rb -target:dll
-verbose test.rb Compiling
C:\work\ironruby\co\svn\trunk\build\release\test.rb...
Creating output file C:\work\ironruby\co\svn\trunk\build\release\test.dll...
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\NewExpression
.cs:88:in `New'': Value cannot be null.
Parameter name: constructor (System::ArgumentNullException)
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\NewExpression
.cs:83:in `New''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:294:in `DefaultVisitDynamicExpression''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:191:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:40:in `VisitNodes''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:108:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:264:in `DefaultVisitBlock''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:176:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:40:in `VisitNodes''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:108:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:264:in `DefaultVisitBlock''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:176:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:40:in `VisitNodes''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:108:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:264:in `DefaultVisitBlock''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:176:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:40:in `VisitNodes''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:108:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:264:in `DefaultVisitBlock''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:176:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:272:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:374:in `DefaultVisitScopeExpression''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.Generated.cs:218:in `VisitNode''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Ast\ExpressionTre
eVisitor.cs:189:in `Visit''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Actions\MatchCall
er.Generated.cs:40:in `Call4''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Actions\CallSite.
cs:275:in `UpdateAndExecute''
from
C:\work\ironruby\co\svn\trunk\src\Microsoft.Scripting.Core\Actions\UpdateDel
egates.Generated.cs:52:in `Update4''
from :0