Ok. But I still don't see what you are getting at. The overridden variable shares storage with the overriding variable because of the declaration. It doesn't matter if you use the default setter/getter pair or if you write one explicitly. Or does it?
Case 1: Implicit setter/getter
class A { int x=3; }
class B { inherit A; int x=7; }
Both x's will share storage, and this storage will initially contain 7, if a B is instantiated. B()->x will return 7, and B()->x=4 will set the single storage for "x" to 4.
Case 2: Explicit setter/getter
class A { int x=3; int `x() { return x; } void `x=(int n) { x=n; } }
class B { inherit A; int x=7; int `x() { return x; } void `x=(int n) { x=n; } }
This should give the same result, no? Currently the compiler doesn't like this, so that is yet another thing to fix. But I don't get why the x:s would not share storage in one case when they do in the other.