[Ironpython-users] WDB web debugger for IronPython

Kerray kerray.cz at gmail.com
Thu Apr 30 10:55:56 CEST 2015


In other news, I've been trying to isolate the issue and finally found out
that dis.py findlinestarts(code) is throwing a NotImplemented when trying
to access code.co_lnotab, which is not implemented in IronPython -
http://www.nudoq.org/#!/Packages/IronPython/IronPython/FunctionCode/P/co_lnotab

So that's probably it, and now it's only a question why instead of
reporting this error it spins off into trying to compile and optimize this
function.

And I'm off trying to find out if I can make the debugger work.

Thanks for reading :)

On Wed, Apr 29, 2015 at 5:31 PM, Kerray <kerray.cz at gmail.com> wrote:

> Hi,
> it's been a while, but I've now again tried running the remote debugger
> https://github.com/Kozea/wdb client under IronPython.
>
> As J.Hardy wrote earlier, based on the stack trace I included:
> > Looks like one of the generator rewriters has a bug. I can't come up
> with a simple case to reproduce this, though. It's failing when switching
> from interpreted to compiled (LambdaExpression.Compile) but I'm not sure
> how to trip that right now, for if it's specific to the code it's compiling.
>
> I've now found that the function it's attempting to compile when it
> crashes is findlinestarts(code) in dis.py, which is a generator - and even
> if I delete its body and let it yield a tuple with two const ints, it still
> fails the same way (!).
>
> When I replace the call to the function in wdb/__init__.py 608 with the
> tuple I made up ((111, 222), (333, 444)) the debugger client successfully
> connects to the server, shows the file source etc.
>
> Nevertheless it seems there's nothing wrong with findlinestarts(code)
> itself, it only fails in this specific context...
>
> The InvalidCastException gets thrown in the VisitAssign when there's
> a ($tuple.Item008).Value on the left side
>
> I've pasted the the DebugView contents for the expression which goes into LambdaExpression.Compile
> to http://pastebin.com/TNX6UUPe
> The part for which the InvalidCast is thrown is 146-148
>
> But I'm still stuck.
>
>
> It's easy to replicate this whole thing
> - download wdb
> - install wdb.client in IPy using setup.py
> - run wdb/server/wdb.server.py in regular Python
> - then ipy.exe -X:FullFrames -c "import wdb; wdb.set_trace(); raw_input();
> print 1"
>
> I use the raw_input so that I can connect the VS debugger to ipy.exe
>
>
> Thanks for any pointers - I'm prepared to spend more time on this issue,
> but I'm out of ideas about what to try next.
>
> Is there anything more I can try to look at?
>
> How do I isolate this issue?
>
>
> But anyway, thank you guys
>
>
> kerray
>
> On Wed, Dec 3, 2014 at 3:31 PM, Kerray <kerray.cz at gmail.com> wrote:
>
>> Hi Jeff,
>> I've opened the issue with IPV6_V6ONLY -
>> https://github.com/IronLanguages/main/issues/238
>> And I'll open one for the Tornado socket problem also.
>>
>> Other than that, I can successfuly run
>> import wdb
>> w = wdb.set_trace()
>> in console and examine the contents of the resulting Wdb object (it seems
>> allright, I can print most attributes etc.) but it doesn't matter what code
>> I run after that - it fails with a variable assignment, with print etc.
>>
>> The code object that gets passed at that moment into the
>> dis.findlinestarts() call which results in crash has these attributes:
>> co_argcount: 1
>> co_cellvars: ()
>> co_code:
>> co_consts: (None,)
>> co_filename: IronPython\27\Lib\threading.py
>> co_firstlineno: 774
>> co_flags: 0
>> co_freevars: ()
>> co_lnotab:
>> co_name: _exitfunc
>> co_names: ('_pickSomeNonDaemonThread', '__debug__')
>> co_nlocals: 2
>> co_stacksize:
>> co_varnames: ('self', 't')
>>
>> When the VS debugger is attached, first it comes up with a "call stack is
>> not deep enough" exception
>>    at IronPython.Modules.SysModule._getframeImpl(CodeContext context,
>> Int32 depth, List`1 stack) in
>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Modules\sys.cs:line
>> 212
>>    at IronPython.Modules.SysModule._getframeImpl(CodeContext context,
>> Int32 depth) in
>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Modules\sys.cs:line
>> 183
>>    at
>> Microsoft.Scripting.Interpreter.FuncCallInstruction`3.Run(InterpretedFrame
>> frame)
>>    at Microsoft.Scripting.Interpreter.Interpreter.Run(InterpretedFrame
>> frame)
>>
>> the context parameter of the _getFrameImpl call is the logging module,
>> depth 3
>>
>> And only after continuing through this exception several times do I get
>> to the point where the original "Unable to cast object of type
>> 'System.Linq.Expressions.FieldExpression' to type
>> 'System.Linq.Expressions.BlockExpression'." exception comes up.
>>
>> But it's fairly easy to get the same results running the wdb server in
>> Python and the client in IronPython with X:FullFrames.
>>
>> I can't think of any other way I could be of help, but I'm open to
>> suggestions :)
>>
>> Thanks anyway!
>>
>> JM
>>
>>
>> On Wed, Nov 26, 2014 at 12:03 AM, Jeff Hardy <jdhardy at gmail.com> wrote:
>>
>>> On Tue, Nov 25, 2014 at 12:32 PM, Kerray <kerray.cz at gmail.com> wrote:
>>>
>>>> Hi,
>>>> very good point, I've been on beta3. But the upgrade didn't help. I've
>>>> figured out how to debug the internals in VS, but there's nothing I could
>>>> be able to fix (or even understand) myself at this point.
>>>>
>>>> ad 1) after running wdb.server, Tornado at first says
>>>> \tornado\netutil.py", line 88, in bind_sockets
>>>> AttributeError: 'module' object has no attribute 'IPV6_V6ONLY'
>>>> When I comment the whole if section out, it starts the loop and waits
>>>> for connections.
>>>>
>>>
>>> Can you open an issue for this? Should be straightforward, if .NET
>>> supports IPv6 only connections. Might have to wait to 2.7.6 though. In the
>>> meantime you can add `hasatter(socket, 'IPV6_V6ONLY')` to the if.
>>>
>>>
>>>>
>>>> Running the client, the server reports this and continues listening:
>>>> Connection received from ('127.0.0.1', 1518)
>>>> [E 141125 11:51:35 stack_context:1] Exception in I/O handler for fd 1616
>>>>     Traceback (most recent call last):
>>>>       File "-\tornado\stack_context.py", line 304, in wrapped
>>>>         ret = fn(*args, **kwargs)
>>>>       File "-\tornado\netutil.py", line 154, in accept_handler
>>>>         callback(connection, address)
>>>>       File "-\wdb_server\streams.py", line 95, in handle_connection
>>>>         stream.read_bytes(4, partial(read_uuid_size, stream))
>>>>       File "-\tornado\iostream.py", line 168, in read_bytes
>>>>         self._try_inline_read()
>>>>       File "-\tornado\iostream.py", line 424, in _try_inline_read
>>>>         if self._read_to_buffer() == 0:
>>>>       File "-\tornado\iostream.py", line 447, in _read_to_buffer
>>>>         chunk = self.read_from_fd()
>>>>       File "-\tornado\iostream.py", line 686, in read_from_fd
>>>>         chunk = self.socket.recv(self.read_chunk_size)
>>>>     error: [Errno 10022] A request to send or receive data was
>>>> disallowed because the socket is not connected and (when sending on a
>>>> datagram socket using a sendto call) no address was supplied
>>>>
>>>> And the client crashes with
>>>> wdb\client\wdb\_compat.py", line 165, in send_bytes
>>>> socket.error: [Errno 10053] An established connection was aborted by
>>>> the software in your host machine
>>>>
>>>> When trying to debug this in VS, I came to the conclusion that the
>>>> Tornado server's socket handling (or my commenting out a piece, or
>>>> something else inside Tornado running under IronPython-) is at fault, since
>>>> it's not true what I've written previously (that a message gets
>>>> communicated and then coms fail) - in fact nothing gets communicated, it
>>>> crashes in the client on trying to send the first message using socket.cs
>>>> sendallWorker(byte[] buffer, int flags).
>>>>
>>>
>>> Not sure why it would not be connected, but I presume Tornado tries to
>>> configure the sockets as non-blocking; it's possible that gets IronPython
>>> confused.
>>>
>>>
>>>>
>>>>
>>>> ad 2) running the server in Python and client in IronPython, I get a
>>>> bit further, but the error is the same - the client in IronPython reports
>>>> Launching browser and wait for connection
>>>> Exception Traceback (most recent call last):
>>>>   File "-\wdb\client\wdb\__init__.py", line 291, in trace_debug_dispatch
>>>>   File "-\wdb\client\wdb\__init__.py", line 250, in trace_dispatch
>>>>   File "-\wdb\client\wdb\__init__.py", line 686, in handle_call
>>>>   File "-\wdb\client\wdb\__init__.py", line 660, in interaction
>>>>   File "-\wdb\client\wdb\ui.py", line 80, in __init__
>>>>   File "-\wdb\client\wdb\__init__.py", line 575, in get_trace
>>>> TypeError: Unable to cast object of type
>>>> 'System.Linq.Expressions.FieldExpression' to type
>>>> 'System.Linq.Expressions.BlockExpression'.
>>>>
>>>> It's the same place and line of code I mentioned in my previous mail:
>>>> > startlnos = dis.findlinestarts(code)
>>>>
>>>> Debugging in VS yields an impressive stack trace, but I don't have any
>>>> idea where to start with this, so again - I'll be very grateful for any
>>>> pointers.
>>>>
>>>
>>> Looks like one of the generator rewriters has a bug. I can't come up
>>> with a simple case to reproduce this, though. It's failing when switching
>>> from interpreted to compiled (LambdaExpression.Compile) but I'm not sure
>>> how to trip that right now, for if it's specific to the code it's compiling.
>>>
>>> - Jeff
>>>
>>>
>>>> Thanks - for even reading this far.
>>>>
>>>>
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitAssign(BinaryExpression
>>>> node) in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 831
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBinary(BinaryExpression
>>>> node) in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 876
>>>>    at System.Linq.Expressions.BinaryExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at Microsoft.Scripting.Ast.GeneratorRewriter.VisitTry(TryExpression
>>>> node) in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 297
>>>>    at System.Linq.Expressions.TryExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitAssign(BinaryExpression
>>>> node) in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 789
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBinary(BinaryExpression
>>>> node) in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 876
>>>>    at System.Linq.Expressions.BinaryExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at
>>>> System.Linq.Expressions.ExpressionVisitor.Visit(ReadOnlyCollection`1 nodes)
>>>>    at
>>>> Microsoft.Scripting.Ast.GeneratorRewriter.VisitBlock(BlockExpression node)
>>>> in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 595
>>>>    at System.Linq.Expressions.BlockExpression.Accept(ExpressionVisitor
>>>> visitor)
>>>>    at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
>>>>    at Microsoft.Scripting.Ast.GeneratorRewriter.Reduce() in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorRewriter.cs:line
>>>> 100
>>>>    at Microsoft.Scripting.Ast.GeneratorExpression.Reduce() in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Ast\GeneratorExpression.cs:line
>>>> 94
>>>>    at System.Linq.Expressions.Expression.ReduceAndCheck()
>>>>    at System.Linq.Expressions.Expression.ReduceExtensions()
>>>>    at
>>>> System.Linq.Expressions.Compiler.StackSpiller.RewriteExtensionExpression(Expression
>>>> expr, Stack stack)
>>>>    at
>>>> System.Linq.Expressions.Compiler.StackSpiller.RewriteExpression(Expression
>>>> node, Stack stack)
>>>>    at
>>>> System.Linq.Expressions.Compiler.StackSpiller.RewriteExpressionFreeTemps(Expression
>>>> expression, Stack stack)
>>>>    at
>>>> System.Linq.Expressions.Compiler.StackSpiller.Rewrite[T](Expression`1
>>>> lambda)
>>>>    at System.Linq.Expressions.Expression`1.Accept(StackSpiller spiller)
>>>>    at
>>>> System.Linq.Expressions.Compiler.LambdaCompiler.Compile(LambdaExpression
>>>> lambda, DebugInfoGenerator debugInfoGenerator)
>>>>    at System.Linq.Expressions.LambdaExpression.Compile()
>>>>    at
>>>> Microsoft.Scripting.Debugging.DebuggableLambdaBuilder.CreateFunctionInfo(LambdaExpression
>>>> generatorFactoryLambda) in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Debugging\DebuggableLambdaBuilder.cs:line
>>>> 386
>>>>    at
>>>> Microsoft.Scripting.Debugging.DebuggableLambdaBuilder.TransformLambda(LambdaExpression
>>>> lambda) in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Debugging\DebuggableLambdaBuilder.cs:line
>>>> 171
>>>>    at
>>>> Microsoft.Scripting.Debugging.DebuggableLambdaBuilder.Transform(LambdaExpression
>>>> lambda) in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Debugging\DebuggableLambdaBuilder.cs:line
>>>> 111
>>>>    at
>>>> Microsoft.Scripting.Debugging.CompilerServices.DebugContext.TransformLambda(LambdaExpression
>>>> lambda, DebugLambdaInfo lambdaInfo) in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Debugging\DebugContext.cs:line
>>>> 68
>>>>    at
>>>> IronPython.Runtime.FunctionCode.<>c__DisplayClass1a.<GetGeneratorOrNormalLambdaTracing>b__19(Expression`1
>>>> x) in
>>>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Runtime\FunctionCode.cs:line
>>>> 787
>>>>    at IronPython.Compiler.GeneratorRewriter.Reduce(Boolean
>>>> shouldInterpret, Boolean emitDebugSymbols, Int32 compilationThreshold,
>>>> IList`1 parameters, Func`2 bodyConverter) in
>>>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Compiler\GeneratorRewriter.cs:line
>>>> 147
>>>>    at
>>>> IronPython.Runtime.FunctionCode.GetGeneratorOrNormalLambdaTracing(PythonContext
>>>> context) in
>>>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Runtime\FunctionCode.cs:line
>>>> 777
>>>>    at IronPython.Runtime.FunctionCode.UpdateDelegate(PythonContext
>>>> context, Boolean forceCreation) in
>>>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Runtime\FunctionCode.cs:line
>>>> 717
>>>>    at
>>>> IronPython.Runtime.FunctionCode.LazyCompileFirstTarget(PythonFunction
>>>> function) in
>>>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Runtime\FunctionCode.cs:line
>>>> 697
>>>>    at
>>>> IronPython.Compiler.PythonCallTargets.OriginalCallTarget1(PythonFunction
>>>> function, Object arg0) in
>>>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Compiler\PythonCallTargets.cs:line
>>>> 42
>>>>    at IronPython.Runtime.FunctionCaller`1.Call1(CallSite site,
>>>> CodeContext context, Object func, T0 arg0) in
>>>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Runtime\PythonFunction.Generated.cs:line
>>>> 420
>>>>    at
>>>> System.Dynamic.UpdateDelegates.UpdateAndExecute3[T0,T1,T2,TRet](CallSite
>>>> site, T0 arg0, T1 arg1, T2 arg2)
>>>>    at get_trace$495(Closure , PythonFunction , Object , Object , Object
>>>> )
>>>>    at
>>>> IronPython.Compiler.PythonFunctionRecursionCheck3.CallTarget(PythonFunction
>>>> function, Object arg0, Object arg1, Object arg2) in
>>>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Compiler\PythonCallTargets.cs:line
>>>> 273
>>>>    at
>>>> IronPython.Compiler.PythonCallTargets.OriginalCallTarget3(PythonFunction
>>>> function, Object arg0, Object arg1, Object arg2) in
>>>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Compiler\PythonCallTargets.cs:line
>>>> 53
>>>>    at IronPython.Runtime.FunctionCaller`3.Call3(CallSite site,
>>>> CodeContext context, Object func, T0 arg0, T1 arg1, T2 arg2) in
>>>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Runtime\PythonFunction.Generated.cs:line
>>>> 676
>>>>    at
>>>> System.Dynamic.UpdateDelegates.UpdateAndExecute5[T0,T1,T2,T3,T4,TRet](CallSite
>>>> site, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4)
>>>>    at CallSite.Target(Closure , CallSite , CodeContext , Object ,
>>>> Object , Object , Object )
>>>>    at IronPython.Runtime.Method.MethodBinding`2.SelfTarget(CallSite
>>>> site, CodeContext context, Object target, T0 arg0, T1 arg1) in
>>>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Runtime\Method.Generated.cs:line
>>>> 195
>>>>    at
>>>> System.Dynamic.UpdateDelegates.UpdateAndExecute4[T0,T1,T2,T3,TRet](CallSite
>>>> site, T0 arg0, T1 arg1, T2 arg2, T3 arg3)
>>>>    at
>>>> Microsoft.Scripting.Interpreter.DynamicInstruction`5.Run(InterpretedFrame
>>>> frame) in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Interpreter\Instructions\DynamicInstructions.Generated.cs:line
>>>> 218
>>>>    at Microsoft.Scripting.Interpreter.Interpreter.Run(InterpretedFrame
>>>> frame) in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Interpreter\Interpreter.cs:line
>>>> 132
>>>>    at
>>>> Microsoft.Scripting.Interpreter.LightLambda.Run10[T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,TRet](T0
>>>> arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8
>>>> arg8, T9 arg9) in
>>>> c:\Users\jmatysek\Documents\main\Runtime\Microsoft.Dynamic\Interpreter\LightLambda.Generated.cs:line
>>>> 417
>>>>    at
>>>> IronPython.Compiler.PythonFunctionRecursionCheck9.CallTarget(PythonFunction
>>>> function, Object arg0, Object arg1, Object arg2, Object arg3, Object arg4,
>>>> Object arg5, Object arg6, Object arg7, Object arg8) in
>>>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Compiler\PythonCallTargets.cs:line
>>>> 375
>>>>    at
>>>> IronPython.Compiler.PythonCallTargets.OriginalCallTarget9(PythonFunction
>>>> function, Object arg0, Object arg1, Object arg2, Object arg3, Object arg4,
>>>> Object arg5, Object arg6, Object arg7, Object arg8) in
>>>> c:\Users\jmatysek\Documents\main\Languages\IronPython\IronPython\Compiler\PythonCallTargets.cs:line
>>>> 83
>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ironpython-users/attachments/20150430/dad6b235/attachment.html>


More information about the Ironpython-users mailing list