Hi,

Exactly like Marek says. hb_stack*() API
is not a public API, it's reserved for
internal Harbour usage. It's needed for a
proper separation of layers / components.

RTL actually uses it in 4 files, which needs
to be fixed, IMO:
do.c, errorapi.c, errorint.c, xhelp.c

Brgds,
Viktor

On 2008.01.07., at 7:59, Marek Paliwoda wrote:

Pritpal Bedi wrote :

You mean now w have to change the sources!

No, if you have written your sources correctly :).
(I know that - I changed only *one* header file).

hb_stackReturnItem() is used in a
lot of places in GTWVT and HBGTWVG and HBWHAT32.

Then they did it wrongly (much like I did), I guess.

What is the harm to retain this alongside ?

AFAIK none (but read below), except the code cleanness.

VM stack API is not exposed to end users because it
has not to be exposed. This guarantees that in the
future the API can be changed without any impact on
user sources. Exposing it to users "locks" the API -
much like you describe with GTWVT, HBGTWVG and HBWHAT32.
I would strongly suggest to change the sources (it's a
matter of s&r operation), instead of exposing API.

But of course personaly I have nothing against
exposing it, because my knowledge is too limited
to assume that I will be one of those who will
be redesigning that API ;-).

--

Marek

_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to