From 20f052ed91db6241680bce05d0edfe17f33ed2f7 Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Wed, 8 Aug 2007 14:33:26 +0000 Subject: [PATCH] 2007-08-08 16:31 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbcompat.ch * include/hbextern.ch * contrib/libnf/fttext.c * source/vm/arrayshb.c + xhb RASCAN() added to Harbour without HB_COMPAT_XHB switch, under the name HB_RASCAN(). Translation from RASCAN() is done via hbcompat.ch ! NFLib/FT_FRSEEK() now works in Harbour regardless of the HB_COMPAT switches. --- harbour/ChangeLog | 11 +++++++++++ harbour/contrib/libnf/fttext.c | 6 +++--- harbour/include/hbcompat.ch | 1 + harbour/include/hbextern.ch | 2 +- harbour/source/vm/arrayshb.c | 4 +--- 5 files changed, 17 insertions(+), 7 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index bacd26ee1c..ed75e7ee8c 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,17 @@ 2002-12-01 13:30 UTC+0100 Foo Bar */ +2007-08-08 16:31 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) + * include/hbcompat.ch + * include/hbextern.ch + * contrib/libnf/fttext.c + * source/vm/arrayshb.c + + xhb RASCAN() added to Harbour without HB_COMPAT_XHB + switch, under the name HB_RASCAN(). + Translation from RASCAN() is done via hbcompat.ch + ! NFLib/FT_FRSEEK() now works in Harbour regardless + of the HB_COMPAT switches. + 2007-08-08 15:44 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/libnf/make_b32.bat - contrib/libnf/nanfor.bc diff --git a/harbour/contrib/libnf/fttext.c b/harbour/contrib/libnf/fttext.c index 5efc2f00ff..f38bbd1a53 100644 --- a/harbour/contrib/libnf/fttext.c +++ b/harbour/contrib/libnf/fttext.c @@ -97,7 +97,7 @@ HB_FUNC( FT_FCLOSE ); HB_FUNC( FT_FCLOSEALL ); HB_FUNC_EXTERN( ASCAN ); -HB_FUNC_EXTERN( RASCAN ); +HB_FUNC_EXTERN( HB_RASCAN ); HB_FUNC_INIT( FT_FINIT ); HB_FUNC_EXIT( FT_FEXIT ); @@ -108,7 +108,7 @@ HB_FUNC_EXIT( FT_FEXIT ); HB_INIT_SYMBOLS_BEGIN( hb_vm_SymbolInit_FTEXT ) { "FT_FUSE", {HB_FS_PUBLIC}, {HB_FUNCNAME( FT_FUSE )}, NULL }, { "ASCAN", {HB_FS_PUBLIC}, {HB_FUNCNAME( ASCAN )}, NULL }, -{ "RASCAN", {HB_FS_PUBLIC}, {HB_FUNCNAME( RASCAN )}, NULL }, +{ "HB_RASCAN", {HB_FS_PUBLIC}, {HB_FUNCNAME( HB_RASCAN )}, NULL }, { "FT_FINIT$", {HB_FS_INIT}, {HB_INIT_FUNCNAME( FT_FINIT )}, NULL }, { "FT_FEXIT$", {HB_FS_EXIT}, {HB_EXIT_FUNCNAME( FT_FEXIT )}, NULL } HB_INIT_SYMBOLS_END( hb_vm_SymbolInit_FTEXT ) @@ -379,7 +379,7 @@ HB_FUNC( FT_FRSEEK ) if ( pCurFile && pSeek ) { - PHB_ITEM pResult = hb_itemDoC( "RASCAN", 2, pCurFile->pArray, pSeek ); + PHB_ITEM pResult = hb_itemDoC( "HB_RASCAN", 2, pCurFile->pArray, pSeek ); if( pResult ) { diff --git a/harbour/include/hbcompat.ch b/harbour/include/hbcompat.ch index 5426db86ef..e7fc9ae3f3 100644 --- a/harbour/include/hbcompat.ch +++ b/harbour/include/hbcompat.ch @@ -129,6 +129,7 @@ #xtranslate HEXTONUM([]) => HB_HEXTONUM() #xtranslate NUMTOHEX([]) => HB_NUMTOHEX() + #xtranslate RASCAN([]) => HB_RASCAN() #xtranslate ISPOINTER( ) => HB_ISPOINTER( ) diff --git a/harbour/include/hbextern.ch b/harbour/include/hbextern.ch index f4062d0d16..c1053349d2 100644 --- a/harbour/include/hbextern.ch +++ b/harbour/include/hbextern.ch @@ -811,6 +811,7 @@ EXTERNAL HB_TOKENCOUNT EXTERNAL HB_TOKENGET EXTERNAL HB_TOKENPTR EXTERNAL HB_ATOKENS +EXTERNAL HB_RASCAN EXTERNAL HB_HASH EXTERNAL HB_HHASKEY @@ -972,7 +973,6 @@ EXTERNAL HGETAUTOADD EXTERNAL HALLOCATE EXTERNAL HDEFAULT -EXTERNAL RASCAN EXTERNAL WILDMATCH #endif /* HB_COMPAT_XHB */ diff --git a/harbour/source/vm/arrayshb.c b/harbour/source/vm/arrayshb.c index c3a983573b..8f332ab744 100644 --- a/harbour/source/vm/arrayshb.c +++ b/harbour/source/vm/arrayshb.c @@ -301,8 +301,7 @@ HB_FUNC( ASCAN ) hb_retni( 0 ); } -#if defined( HB_COMPAT_XHB ) -HB_FUNC( RASCAN ) +HB_FUNC( HB_RASCAN ) { PHB_ITEM pArray = hb_param( 1, HB_IT_ARRAY ); PHB_ITEM pValue = hb_param( 2, HB_IT_ANY ); @@ -319,7 +318,6 @@ HB_FUNC( RASCAN ) else hb_retni( 0 ); } -#endif /* TODO: In Xbase++ fifth parameter determines whether array elements are passed by reference to the code block. [vszakats] */