Debugger hang when step throught
Hello, The faulty code bellow when debugged and 'step through' cause the debugger to hang: self inform: '1'. #(2 3 4) select: [:i| i] thenDo: [:n| self inform: n printString ]. self inform: '5'. It seems trapped in an infinite loop, you can more or less get control back with Alt+[.] When step in, the debugger properly report the error. Pharo #60362. I did not see similar bug report, shall I? -- Dr. Geo http://drgeo.eu
tx for the report hilaire. Indeed I can reproduce your bug - I pasted it - I did debug it over over and through trhough and my system froze. On Mon, Feb 6, 2017 at 7:04 PM, Hilaire <hilaire@drgeo.eu> wrote:
Hello,
The faulty code bellow when debugged and 'step through' cause the debugger to hang:
self inform: '1'. #(2 3 4) select: [:i| i] thenDo: [:n| self inform: n printString ]. self inform: '5'.
It seems trapped in an infinite loop, you can more or less get control back with Alt+[.]
When step in, the debugger properly report the error.
Pharo #60362.
I did not see similar bug report, shall I?
-- Dr. Geo http://drgeo.eu
More simple way to reproduce: #(2) select: [:i| i] Problem somehow related to mustBeBoolean error. If you try debug #(2) select: [:i| i / 0] Debugger will fallback into #/ method at ZeroDivide statement. But with mustBeBoolean trick it's not work. 2017-02-07 8:03 GMT+01:00 Stephane Ducasse <stepharo.self@gmail.com>:
tx for the report hilaire. Indeed I can reproduce your bug - I pasted it - I did debug it over over and through trhough and my system froze.
On Mon, Feb 6, 2017 at 7:04 PM, Hilaire <hilaire@drgeo.eu> wrote:
Hello,
The faulty code bellow when debugged and 'step through' cause the debugger to hang:
self inform: '1'. #(2 3 4) select: [:i| i] thenDo: [:n| self inform: n printString ]. self inform: '5'.
It seems trapped in an infinite loop, you can more or less get control back with Alt+[.]
When step in, the debugger properly report the error.
Pharo #60362.
I did not see similar bug report, shall I?
-- Dr. Geo http://drgeo.eu
2017-02-07 10:30 GMT+01:00 Denis Kudriashov <dionisiydk@gmail.com>:
More simple way to reproduce:
#(2) select: [:i| i]
Problem somehow related to mustBeBoolean error. If you try debug
#(2) select: [:i| i / 0]
Debugger will fallback into #/ method at ZeroDivide statement. But with mustBeBoolean trick it's not work.
I open issue 19662 <https://pharo.fogbugz.com/f/cases/19662/Debugger-step-through-mustBeBoolean-...> . Also I found another funny issue. Try debugIt following expression: 1 ifTrue: [2]. You will be wondering that debugger will not able to open.
I regularly got hit by this kind of lockup. Do not know exactly why it locks up but then it is "kill pharo" "recover changes" and "change sorter" fun session... Got one an hour ago, drives me up the wall. It is one of the reasons that made me add the Save with Timetag feature. [image: Inline image 1] Will be nicer when the image compaction will work because this makes me a couple of huge files (space is cheap, but the size seems to affect autocompletion speed for some reason). Phil On Tue, Feb 7, 2017 at 10:35 AM, Denis Kudriashov <dionisiydk@gmail.com> wrote:
2017-02-07 10:30 GMT+01:00 Denis Kudriashov <dionisiydk@gmail.com>:
More simple way to reproduce:
#(2) select: [:i| i]
Problem somehow related to mustBeBoolean error. If you try debug
#(2) select: [:i| i / 0]
Debugger will fallback into #/ method at ZeroDivide statement. But with mustBeBoolean trick it's not work.
I open issue 19662 <https://pharo.fogbugz.com/f/cases/19662/Debugger-step-through-mustBeBoolean-...> .
Also I found another funny issue. Try debugIt following expression:
1 ifTrue: [2].
You will be wondering that debugger will not able to open.
participants (4)
-
Denis Kudriashov -
Hilaire -
phil@highoctane.be -
Stephane Ducasse