Hi Przemek,

OVERRIDE / EXTEND CLASS does not have to work in all cases. In some
situations such functionality nay even break class definitions and cause
unpredictable behavior, f.e. it does not change any classes which already
inherited from modified class so accessing instance variables may use wrong
indexes and operate on instance area which belong to other ancestors.
Such things can happen in both compilers: Harbour and xHarbour.

Anyway, Teo has showed me a way to change it to a function in Harbour,
I will test it and give you a feedback. If you have another suggestion,
will be welcome too.

I do not like that people use it because we cannot support functionality
which is broken by definition though I understand that locally it may be
usable in some situations. I do not want to add it to core code as documented feature because I cannot promise it will work in the same way in the future
when we extend/modify our class code. Keeping it alive may be serious
problem in farther developing. But in contrib/xhb directory we have xHarbour compatibility library and header (.ch) files which emulate some of xHarbour
features we do not want to add to core code for different reasons. Some of
them also use unsupported and undocumented functionality so I think that
if I add yet another header file xhbcls.ch with PP commands for above nothing
worse will happen. I'll commit it ASAP but please remember that it's
undocumented and unsupported by us functionality.

best regards,
Przemek

I fact, Przemek, I have used this feature just to change some FWH methods and classes... I never used to change something from the xHarbour core. Thank you very much for your attention.

Best Regards,

Kleyber Derick
_______________________________________________
Harbour mailing list
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to