Compiling a method with a new iv raises DNU
Here is the scenario I added the method comment ^ comment and I get now a DNU doSemanticAnalysisIn: at: aCompiledMethod ^ self at: aCompiledMethod ifAbsentPut: [ aCompiledMethod parseTree doSemanticAnalysisIn: aCompiledMethod methodClass ] where aCompiledMethod is StoreBlessing>>#comment but the parseTree is nil :( How this behavior can happen? Stef
Apparently there is something wrong in the ASTCache. The only solution I found to continue to work was to remove the QAPlugin. Le 4/9/15 10:21, stepharo a écrit :
Here is the scenario
I added the method
comment
^ comment
and I get now a DNU
doSemanticAnalysisIn:
at: aCompiledMethod ^ self at: aCompiledMethod ifAbsentPut: [ aCompiledMethod parseTree doSemanticAnalysisIn: aCompiledMethod methodClass ]
where aCompiledMethod is StoreBlessing>>#comment
but the parseTree is nil :(
How this behavior can happen?
Stef
Hi Stef. Can you tell me in which class do you add this? Because it does not happen for every class. There was an issue that one on the rules destroying ASTs, but we solved it about a month ago. Uko
On 04 Sep 2015, at 10:45, stepharo <stepharo@free.fr> wrote:
Apparently there is something wrong in the ASTCache. The only solution I found to continue to work was to remove the QAPlugin.
Le 4/9/15 10:21, stepharo a écrit :
Here is the scenario
I added the method
comment
^ comment
and I get now a DNU
doSemanticAnalysisIn:
at: aCompiledMethod ^ self at: aCompiledMethod ifAbsentPut: [ aCompiledMethod parseTree doSemanticAnalysisIn: aCompiledMethod methodClass ]
where aCompiledMethod is StoreBlessing>>#comment
but the parseTree is nil :(
How this behavior can happen?
Stef
I checked with stef a bit what it could be⦠- first theory: copy-paste of some strange character leads to error in the scanner. But we could not reproduce it, so that was not it - second: with quality check running we stress far more the reading of code right after accepting a method. So it could uncover strange bugs in the .changes mechanism (which is very convoluted and old code). I guess it is the second and we should monitor if this happens more often to find way to reproduce it. Marcus
On 04 Sep 2015, at 11:00, Yuriy Tymchuk <yuriy.tymchuk@me.com> wrote:
Hi Stef.
Can you tell me in which class do you add this? Because it does not happen for every class. There was an issue that one on the rules destroying ASTs, but we solved it about a month ago.
Uko
On 04 Sep 2015, at 10:45, stepharo <stepharo@free.fr> wrote:
Apparently there is something wrong in the ASTCache. The only solution I found to continue to work was to remove the QAPlugin.
Le 4/9/15 10:21, stepharo a écrit :
Here is the scenario
I added the method
comment
^ comment
and I get now a DNU
doSemanticAnalysisIn:
at: aCompiledMethod ^ self at: aCompiledMethod ifAbsentPut: [ aCompiledMethod parseTree doSemanticAnalysisIn: aCompiledMethod methodClass ]
where aCompiledMethod is StoreBlessing>>#comment
but the parseTree is nil :(
How this behavior can happen?
Stef
participants (3)
-
Marcus Denker -
stepharo -
Yuriy Tymchuk