[IronPython] Possible bug in interpreter

Michael Foord fuzzyman at voidspace.org.uk
Sat Jul 12 19:24:37 CEST 2008


Dan Eloff wrote:
> This error is exploding all around me. I can get you a dozen more
> stack traces from different places in my code. There's some kind of
> unpacking happening (at
> Microsoft.Scripting.Interpretation.Interpreter.InterpretTryStatement(InterpreterState
> state, Expression expr) ?) that is breaking a lot of things. I'd love
> to know what is causing it so I can either avoid it, or patch it so I
> can move on. Here's another trace that may be useful.
>
> -Dan
>
> TypeError: argument of type 'Planet' is not iterable
> beskar\namespace.py
> Line 83:
> Line 84:     def has(self, key):
> Line 85:         return key in self.ns or hasattr(self.ns, key)
> Line 86:
> Line 87:     def get(self, key):
>
>   

Well that *looks* like a normal Python error. Is self.ns iterable? (It 
either needs to be iterable, have a __getitem__ that supports integer 
indexes or have a __contains__ method).

Michael

> TypeError
> at has in beskar\namespace.py, line 85
> at __getitem__ in beskar\context.py, line 53
> at RightColumn in <string>, line 41
> at body in <string>, line 189
> at render in beskar\template.py, line 18
> at load_xaml in game\templates\__init__.py, line 13
> at __init__ in game\planet.py, line 11
> at <lambda$65> in game\window_manager.py, line 60
> at ShowTab in game\tabcontrol.py, line 85
> at OnTabChanged in game\tabcontrol.py, line 101
> at __call__ in game\event.py, line 41
> at <lambda$53> in game\tabcontrol.py, line 34
> CLR Stack Trace:
>    at Microsoft.Scripting.Interpretation.Interpreter.InterpretTryStatement(InterpreterState
> state, Expression expr)
>    at Microsoft.Scripting.Interpretation.Interpreter.Interpret(InterpreterState
> state, Expression expr)
>    at Microsoft.Scripting.Interpretation.Interpreter.InterpretAndCheckFlow(InterpreterState
> state, Expression node, Object& result)
>    at Microsoft.Scripting.Interpretation.Interpreter.InterpretBlock(InterpreterState
> state, Expression expr)
>    at Microsoft.Scripting.Interpretation.Interpreter.Interpret(InterpreterState
> state, Expression expr)
>    at Microsoft.Scripting.Interpretation.Interpreter.InterpretScopeExpression(InterpreterState
> state, Expression expr)
>    at Microsoft.Scripting.Interpretation.Interpreter.Interpret(InterpreterState
> state, Expression expr)
>    at Microsoft.Scripting.Interpretation.Interpreter.InterpretScopeExpression(InterpreterState
> state, Expression expr)
>    at Microsoft.Scripting.Interpretation.Interpreter.Interpret(InterpreterState
> state, Expression expr)
>    at Microsoft.Scripting.Interpretation.Interpreter.Execute(InterpreterState
> state, Expression expression)
>    at Microsoft.Scripting.Interpretation.Interpreter.InterpretLambda(InterpreterState
> parentState, LambdaExpression lambda, Object[] args, Object[] array)
>    at Microsoft.Scripting.Interpretation.LambdaInvoker.Invoke(Object[]
> args, Object[] array)
>    at Interpreted_body_8(LambdaInvoker , Object )
>    at _stub_$688##438(Closure , CallSite , CodeContext , Object , Object )
>    at S$38.render$1313(Closure , Object self, Object namespaces)
>    at S$38.render$1313(Closure , Object[] )
>    at _stub_$3950##2498(Closure , CallSite , CodeContext , Object ,
> Object , Object )
>    at _stub_$3949##2497(Closure , CallSite , CodeContext , Object , Object )
>    at S$26.load_xaml$926(Closure , Object template, Object namespaces)
>    at S$26.load_xaml$926(Closure , Object[] )
>    at _stub_$3471##2038(Closure , CallSite , CodeContext , Object ,
> String , Object )
>    at _stub_MatchCaller(Object , CallSite , Object[] )
>    at Microsoft.Scripting.Actions.CallSite`1.UpdateAndExecute(Object[] args)
>    at Microsoft.Scripting.Actions.UpdateDelegates.Update4[T,T0,T1,T2,T3,TRet](CallSite
> site, T0 arg0, T1 arg1, T2 arg2, T3 arg3)
>    at S$79.__init__$2341(Closure , Object self, Object planet)
>    at _stub_$2796##1366(Closure , CallSite , CodeContext , Object ,
> Object , Object )
>    at _stub_$690##440(Closure , CallSite , CodeContext , Object , Object )
>    at _stub_MatchCaller(Object , CallSite , Object[] )
>    at Microsoft.Scripting.Actions.CallSite`1.UpdateAndExecute(Object[] args)
>    at Microsoft.Scripting.Actions.UpdateDelegates.Update3[T,T0,T1,T2,TRet](CallSite
> site, T0 arg0, T1 arg1, T2 arg2)
>    at _stub_$4051##2599(Closure , CallSite , CodeContext , Object , Object )
>    at _stub_MatchCaller(Object , CallSite , Object[] )
>    at Microsoft.Scripting.Actions.CallSite`1.UpdateAndExecute(Object[] args)
>    at Microsoft.Scripting.Actions.UpdateDelegates.Update3[T,T0,T1,T2,TRet](CallSite
> site, T0 arg0, T1 arg1, T2 arg2)
>    at S$77.<lambda$65>$2329(Closure )
>    at _stub_$375##345(Closure , CallSite , CodeContext , Object )
>    at _stub_MatchCaller(Object , CallSite , Object[] )
>    at Microsoft.Scripting.Actions.CallSite`1.UpdateAndExecute(Object[] args)
>    at Microsoft.Scripting.Actions.UpdateDelegates.Update2[T,T0,T1,TRet](CallSite
> site, T0 arg0, T1 arg1)
>    at S$72.ShowTab$2175(Closure , Object self, Object tab, Object silent)
>    at _stub_$3434##2001(Closure , CallSite , CodeContext , Object ,
> Object , Object , Object )
>    at _stub_$2583##1153(Closure , CallSite , CodeContext , Object ,
> Object , Object )
>    at _stub_MatchCaller(Object , CallSite , Object[] )
>    at Microsoft.Scripting.Actions.CallSite`1.UpdateAndExecute(Object[] args)
>    at Microsoft.Scripting.Actions.UpdateDelegates.Update4[T,T0,T1,T2,T3,TRet](CallSite
> site, T0 arg0, T1 arg1, T2 arg2, T3 arg3)
>    at S$72.OnTabChanged$2177(Closure , Object self, Object sender, Object e)
>    at _stub_$705##455(Closure , CallSite , CodeContext , Object ,
> Object , Object , Object )
>    at _stub_$704##454(Closure , CallSite , CodeContext , Object ,
> Object , Object )
>    at _stub_MatchCaller(Object , CallSite , Object[] )
>    at Microsoft.Scripting.Actions.CallSite`1.UpdateAndExecute(Object[] args)
>    at Microsoft.Scripting.Actions.UpdateDelegates.Update4[T,T0,T1,T2,T3,TRet](CallSite
> site, T0 arg0, T1 arg1, T2 arg2, T3 arg3)
>    at _stub_$2397##967(Closure , CallSite , CodeContext , Object ,
> Object , Object )
>    at S$14.__call__$665(Closure , Object self, Object sender, Object
> event_args)
>    at _stub_$705##455(Closure , CallSite , CodeContext , Object ,
> Object , Object , Object )
>    at _stub_$704##454(Closure , CallSite , CodeContext , Object ,
> Object , Object )
>    at _stub_MatchCaller(Object , CallSite , Object[] )
>    at Microsoft.Scripting.Actions.CallSite`1.UpdateAndExecute(Object[] args)
>    at Microsoft.Scripting.Actions.UpdateDelegates.Update4[T,T0,T1,T2,T3,TRet](CallSite
> site, T0 arg0, T1 arg1, T2 arg2, T3 arg3)
>    at _stub_$4043##2591(Closure , CallSite , CodeContext , Object ,
> Object , Object )
>    at _stub_MatchCaller(Object , CallSite , Object[] )
>    at Microsoft.Scripting.Actions.CallSite`1.UpdateAndExecute(Object[] args)
>    at Microsoft.Scripting.Actions.UpdateDelegates.Update4[T,T0,T1,T2,T3,TRet](CallSite
> site, T0 arg0, T1 arg1, T2 arg2, T3 arg3)
>    at S$72.<lambda$53>$2167(Closure , Object s, Object e)
>    at _stub_$4038##2586(Closure , CallSite , CodeContext , Object ,
> Object , Object )
>    at _stub_MatchCaller(Object , CallSite , Object[] )
>    at Microsoft.Scripting.Actions.CallSite`1.UpdateAndExecute(Object[] args)
>    at Microsoft.Scripting.Actions.UpdateDelegates.Update4[T,T0,T1,T2,T3,TRet](CallSite
> site, T0 arg0, T1 arg1, T2 arg2, T3 arg3)
>    at System.Void(Object, SelectionChangedEventArgs)(Object[] , Object
> , SelectionChangedEventArgs )
>    at System.Windows.Controls.ListBox.OnSelectionChanged(SelectionChangedEventArgs
> e)
>    at System.Windows.Controls.ListBox.ProcessSelectionPropertyChange(DependencyProperty
> changedProperty, Object oldValue, Object newValue)
>    at System.Windows.Controls.ListBox.OnSelectedItemChanged(Object
> oldValue, Object newValue)
>    at System.Windows.Controls.ListBox.OnSelectedItemChanged(DependencyObject
> d, DependencyPropertyChangedEventArgs e)
>    at System.Windows.DependencyObject.RaisePropertyChangeNotifications(DependencyProperty
> dp, Object newValue, Object oldValue)
>    at System.Windows.DependencyObject.SetValueInternal(DependencyProperty
> dp, Object value, Boolean isSetByStyle, Boolean isSetByBuiltInStyle)
>    at System.Windows.DependencyObject.SetValueInternal(DependencyProperty
> dp, Object value)
>    at System.Windows.DependencyObject.SetValue(DependencyProperty dp,
> Object value)
>    at System.Windows.Controls.ListBox.set_SelectedItem(Object value)
>    at System.Windows.Controls.ListBox.SetSelectedItem(Object item)
>    at System.Windows.Controls.ListBox.NotifyListItemClicked(ListBoxItem
> listBoxItem)
>    at System.Windows.Controls.ListBoxItem.OnMouseLeftButtonDown(MouseButtonEventArgs
> e)
>    at System.Windows.Controls.ListBoxItem.<.ctor>b__0(Object sender,
> MouseButtonEventArgs e)
>    at System.Windows.CoreInvokeHandler.InvokeEventHandler(Int32
> typeIndex, Delegate handlerDelegate, Object sender, Object args)
>    at MS.Internal.JoltHelper.FireEvent(IntPtr unmanagedObj, IntPtr
> unmanagedObjArgs, Int32 argsTypeIndex, String eventName)
> _______________________________________________
> Users mailing list
> Users at lists.ironpython.com
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>   


-- 
http://www.ironpythoninaction.com/
http://www.voidspace.org.uk/
http://www.trypython.org/
http://www.ironpython.info/
http://www.theotherdelia.co.uk/
http://www.resolverhacks.net/




More information about the Ironpython-users mailing list