On Wed, 22 Jul 2009, Szak�ts Viktor wrote:

Hi,

> Hi Przemek and All,
> To cut the matter of moving from ULONG to long for
> 'size' types, I'd like to propose to start with above
> two functions and convert their return values from
> ULONG to long.
> Or, even better would be to move to hbSize.
> What do you think?

Before you change sth please think about results.
Using Harbour internal types in extended API creates problems
for users who do not well know Harbour internals and want
add some extensions to Harbour, i.e. their own C code or wrappers
to 3-rd party libraries.
As long as they can use well know types then it's rather simple
job. If they have 'int iVal' then they can use hb_retni( iVal ),
if they have long lVal then they can use hb_retnl( lVal ), etc.
In the moment when we introduce Harbour types to extended API
we are creating problems with casting to types used by other code.
If possible we should use native C types but of course there are
places where we need out own types. String and array indexes are
good candidates for such Harbour dedicated type but it has to be
done globally in all functions not only chosen one. Otherwise we
will make things only worse because we may force some temporary
casting in many different places which later will have to be removed
but without compiler warnings pacified by such temporary casting it
will be hard to locate and clean them.

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

Reply via email to