Hi Przemek,
2008-07-07 19:32 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/vm/arrayshb.c
* contrib/xhb/xhbfunc.c
! Moved hb_ArrayID() Harbour level function to xhb.lib.
; NOTE: This function is not compatible with x64 architecture.
It can be updated for WIN64 (please remember that only WIN64 has 32
bit
LONG type and other x86 based 64bit platforms I know have 64bit LONG
type).
It's enopugh to change return value to:
I'm always mixing terminology, sorry, I meant Win64.
[ that's what I wrote first, and I changed to x64 pbly
because I'm bloody tired. ]
hb_retnint( ( HB_PTR_DIFF ) hb_arrayId( pArray ) );
You're right.
I didn't consider this solution for other places,
but I feel it better to use ptr functions, since
using ints hides logic and not very good at long
term.
anyhow over 4 years ago (28 Apr 2004) I've change this function in
xHarbour to return pointer instead of number so now it should look
like:
HB_FUNC( HB_ARRAYID )
{
PHB_ITEM pArray = hb_param( 1, HB_IT_ARRAY );
hb_retptr( pArray ? ( void * ) pArray->item.asArray.value :
NULL );
}
This version is xHarbour compatible.
Sorry that I forgot to update it in Harbour but for me it was old
obsolete
code.
Even better. I've committed it.
Brgds,
Viktor
_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour