Thanks for reporting Abdelghani.
Now it would be doubly useful if you could isolate which build introduced the problem.
PharoLauncher can be used to help bisect working/non-working images.

cheers -ben

On 27 November 2017 at 04:08, abdelghani ALIDRA via Pharo-users <pharo-users@lists.pharo.org> wrote:


---------- Forwarded message ----------
From:��abdelghani ALIDRA <alidrandco@yahoo.fr>
To:��"pharo-users@lists.pharo.org" <pharo-users@lists.pharo.org>
Cc:��
Bcc:��
Date:��Sun, 26 Nov 2017 20:08:29 +0000 (UTC)
Subject:��Removing instance variables doesn't recompile the methods

Hi,

In a fresh pharo 6 image, I add a class with an instance variable x and implement accessors.
Then I write a test method for the accessors of x
MyClassTest>>testReadWriteX
������ self assert (MyClass new x: 0) x equals: 0

I run the test and obviously it is green

BUT

I remove the instance variable x. Obviously, the accessors are broken and the test should be red when I execute it again but it is not!!!

I can even change the class again (to recompile it I thought) or even load the code in a new image and the tests are still green.
I can also invoque the broken methods in a playground or in an inspector : MyClass new x: 0; increment; x then printIt. and astonishingly 1 is printed.
The only way to detect the error is to recompile the method but this does not happen (maybe it should) when instance variables are modified or removed in the class (even when you use the refactoring tool!)

I think this is annoying because one can no more really trust his tests.

Cheers
Abdelghani