Hi Nicolai,

On Fri, Jun 24, 2016 at 09:15:41PM +0200, Nicolai Hess wrote:
> 
> 
> 2016-06-24 20:57 GMT+02:00 Alistair Grant <akgrant0...@gmail.com>:
> 
>     Hi All,
> 
>     I'm currently regularly hitting an issue with the debugger where
>     inspecting a temporary variable shows the string "error obtaining field
>     value" rather than the actual value.
> 
> 
> I am not sure if this is the same error. We had a couple of issues with 
> reading
> different kinds of variables in the debugger,
> and some fix work for one access and introduces new issues for other kinds of
> variables :(
> 
> Most things are working now, but we have still an issue in Pharo 6.0 with 
> block
> local vars in optimized blocks (case 17343)
> But I think this one is a different issue.
> Before we open a new issue, it would be good if I can reproduce this one.
> Give me some time ( or some hints) what I need to reproduce this)

Thanks for your reply.

I've created a class that reproduces the problem:


'From Pharo5.0 of 16 April 2015 [Latest update: #50757] on 24 June 2016 at 
9:51:07.97744 pm'!
Object subclass: #AKGDebuggerBug
        instanceVariableNames: ''
        classVariableNames: ''
        poolDictionaries: ''
        category: 'AKG-Bugs'!

!AKGDebuggerBug methodsFor: 'demo' stamp: 'AlistairGrant 6/24/2016 21:49'!
method1
        "AKGDebuggerBug new method1"
        self method2: [ 'hello world' ].! !

!AKGDebuggerBug methodsFor: 'demo' stamp: 'AlistairGrant 6/24/2016 21:50'!
method3: aBlock

        | result |
        
        [ result := aBlock value ] value.
        ^result.! !

!AKGDebuggerBug methodsFor: 'demo' stamp: 'AlistairGrant 6/24/2016 21:50'!
method2: aBlock
        | result |
        [ result := aBlock numArgs = 1
                ifTrue: [ aBlock value: self ]
                ifFalse: [ aBlock value ] ] value.
        ^ result! !


Debugging "AKGDebuggerBug new method1" and stepping through to where
result is assigned in method2: will trigger the problem.

Note that modifying method1 to call method3: will not reproduce the
problem.


Thanks,
Alistair


Reply via email to