From b50ea8e77edf19a5776b8091938e73b3ecf65c71 Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Wed, 16 Jun 2010 19:10:22 +0000 Subject: [PATCH] 2010-06-16 21:09 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) * include/extend.api * include/hbapi.h + Disabled IS*() macros when HB_LEGACY_TYPES_OFF is defined (default when building Harbour) * src/pp/pplib.c * src/rtl/hbregex.c * src/rtl/dateshb.c * contrib/xhb/xhbfunc.c * contrib/rddads/rddads.h ! Fixed IS*() -> HB_IS*() * src/rtl/hbregex.c * contrib/hbmysql/mysql.c * contrib/xhb/xhbsave.c * contrib/hbmzip/hbmzip.c * contrib/hbfbird/firebird.c * contrib/hbnetio/netiosrv.c * contrib/rddads/rddads.h * contrib/rddads/adsmgmnt.c * contrib/rddads/adsfunc.c * contrib/hbmisc/hb_f.c * contrib/hbmisc/ffind.c * contrib/hbwin/win_com.c * contrib/hbwin/wapi_shellapi.c * contrib/hbssl/bio.c * contrib/hbssl/hbssl.c * contrib/hbssl/sslctx.c % Optimized to use hb_parn*def() calls instead of inline-if expression (where default value is constant or simple variable). * INSTALL + valgrind is available for darwin-amd64 (in 1.6 devel tree, yet). --- harbour/ChangeLog | 57 +++++++++++++++++++++------ harbour/INSTALL | 2 +- harbour/contrib/hbfbird/firebird.c | 4 +- harbour/contrib/hbmisc/ffind.c | 2 +- harbour/contrib/hbmisc/hb_f.c | 2 +- harbour/contrib/hbmysql/mysql.c | 4 +- harbour/contrib/hbmzip/hbmzip.c | 6 +-- harbour/contrib/hbnetio/netiosrv.c | 2 +- harbour/contrib/hbssl/bio.c | 10 ++--- harbour/contrib/hbssl/hbssl.c | 12 +++--- harbour/contrib/hbssl/sslctx.c | 4 +- harbour/contrib/hbwin/wapi_shellapi.c | 2 +- harbour/contrib/hbwin/win_com.c | 12 +++--- harbour/contrib/rddads/adsfunc.c | 54 ++++++++++++------------- harbour/contrib/rddads/adsmgmnt.c | 14 +++---- harbour/contrib/rddads/rddads.h | 2 +- harbour/contrib/xhb/xhbfunc.c | 4 +- harbour/contrib/xhb/xhbsave.c | 4 +- harbour/include/extend.api | 2 +- harbour/include/hbapi.h | 2 +- harbour/src/pp/pplib.c | 2 +- harbour/src/rtl/dateshb.c | 4 +- harbour/src/rtl/hbregex.c | 2 +- 23 files changed, 122 insertions(+), 87 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 71e4e50279..32b6d39716 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -16,6 +16,41 @@ The license applies to all entries newer than 2009-04-28. */ +2010-06-16 21:09 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) + * include/extend.api + * include/hbapi.h + + Disabled IS*() macros when HB_LEGACY_TYPES_OFF is defined + (default when building Harbour) + + * src/pp/pplib.c + * src/rtl/hbregex.c + * src/rtl/dateshb.c + * contrib/xhb/xhbfunc.c + * contrib/rddads/rddads.h + ! Fixed IS*() -> HB_IS*() + + * src/rtl/hbregex.c + * contrib/hbmysql/mysql.c + * contrib/xhb/xhbsave.c + * contrib/hbmzip/hbmzip.c + * contrib/hbfbird/firebird.c + * contrib/hbnetio/netiosrv.c + * contrib/rddads/rddads.h + * contrib/rddads/adsmgmnt.c + * contrib/rddads/adsfunc.c + * contrib/hbmisc/hb_f.c + * contrib/hbmisc/ffind.c + * contrib/hbwin/win_com.c + * contrib/hbwin/wapi_shellapi.c + * contrib/hbssl/bio.c + * contrib/hbssl/hbssl.c + * contrib/hbssl/sslctx.c + % Optimized to use hb_parn*def() calls instead of inline-if expression + (where default value is constant or simple variable). + + * INSTALL + + valgrind is available for darwin-amd64 (in 1.6 devel tree, yet). + 2010-06-16 19:56 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) * src/rtl/hbzlibgz.c * src/rtl/fstemp.c @@ -31,25 +66,25 @@ * src/rtl/trace.c * src/rtl/ati.c * src/rtl/hbstrsh.c - % Optimized to use hb_parn*def() calls instead of inline-if expression + % Optimized to use hb_parn*def() calls instead of inline-if expression (where default value is constant or simple variable). % Optimized out few HB_ISNUM() calls where the default value was zero. Also added comment to signal the intention. * src/rtl/inkey.c - + Added two TOFIXes to LASTKEY() and NEXTKEY() after having discovered - two hidden (dirty) parameter extensions over original Clipper - implementation, both added here in Harbour in year 2001. [ I didn't - test if it's undocumented Clipper function, but there is no such - indication in past log enties, plus even in this case it would have + + Added two TOFIXes to LASTKEY() and NEXTKEY() after having discovered + two hidden (dirty) parameter extensions over original Clipper + implementation, both added here in Harbour in year 2001. [ I didn't + test if it's undocumented Clipper function, but there is no such + indication in past log enties, plus even in this case it would have to be marked with HB_CLP_UNDOC. They are also not Xbase++ extensions. ] - + Added HB_KEYNEXT(), HB_KEYLAST() functions which implement original + + Added HB_KEYNEXT(), HB_KEYLAST() functions which implement original NEXTKEY()/LASTKEY() functionality plus the extension. - Pls correct me if I'm wrong, but after reading all related log entries - I could not find out why the default of the optional parameter is - _SET_EVENTMASK in NEXTKEY(), but INKEY_ALL in LASTKEY(). It was changed + Pls correct me if I'm wrong, but after reading all related log entries + I could not find out why the default of the optional parameter is + _SET_EVENTMASK in NEXTKEY(), but INKEY_ALL in LASTKEY(). It was changed as part of big change, here: 2004-10-11 21:40 UTC+0100 Przemyslaw Czerpak - ; I intend to deprecate the dirty extensions and finish adding the two + ; I intend to deprecate the dirty extensions and finish adding the two new Harbour specific function, which we're free to extend. * contrib/xhb/dumpvar.prg diff --git a/harbour/INSTALL b/harbour/INSTALL index d3a917b981..584452b1ec 100644 --- a/harbour/INSTALL +++ b/harbour/INSTALL @@ -725,7 +725,7 @@ HARBOUR Build Harbour with: HB_USER_CFLAGS=-DHB_FM_STATISTICS - Valgrind (on linux and darwin-x86 targets only) + Valgrind (on linux and darwin targets only) -------- Build Harbour with: HB_USER_DEBUG=yes diff --git a/harbour/contrib/hbfbird/firebird.c b/harbour/contrib/hbfbird/firebird.c index c6369b7bc8..d5526e1355 100644 --- a/harbour/contrib/hbfbird/firebird.c +++ b/harbour/contrib/hbfbird/firebird.c @@ -3,7 +3,7 @@ */ /* - * xHarbour Project source code: + * Harbour Project source code: * Firebird RDBMS low level (client api) interface code. * * Copyright 2003 Rodrigo Moreno rodrigo_moreno@yahoo.com @@ -324,7 +324,7 @@ HB_FUNC( FBQUERY ) XSQLVAR * var; char sel_str[ 256 ]; - unsigned short dialect = HB_ISNUM( 3 ) ? ( unsigned short ) hb_parni( 3 ) : SQL_DIALECT_V5; + unsigned short dialect = ( unsigned short ) hb_parnidef( 3, SQL_DIALECT_V5 ); int i; int num_cols; diff --git a/harbour/contrib/hbmisc/ffind.c b/harbour/contrib/hbmisc/ffind.c index 3e58ff6c39..65556177f2 100644 --- a/harbour/contrib/hbmisc/ffind.c +++ b/harbour/contrib/hbmisc/ffind.c @@ -88,7 +88,7 @@ HB_FUNC( FILEFINDFIRST ) { void ** ph = ( void ** ) hb_gcAllocate( sizeof( PHB_FFIND ), &s_gcPHB_FFIND_funcs ); - PHB_FFIND ffind = hb_fsFindFirst( pszFileName, HB_ISNUM( 3 ) ? hb_parnl( 3 ) : HB_FA_ALL ); + PHB_FFIND ffind = hb_fsFindFirst( pszFileName, hb_parnldef( 3, HB_FA_ALL ) ); * ph = ( void * ) ffind; diff --git a/harbour/contrib/hbmisc/hb_f.c b/harbour/contrib/hbmisc/hb_f.c index 98b7c67b89..3e98e3d328 100644 --- a/harbour/contrib/hbmisc/hb_f.c +++ b/harbour/contrib/hbmisc/hb_f.c @@ -181,7 +181,7 @@ static long hb_hbfskip( int recs ) HB_FUNC( HB_FSKIP ) { - hb_hbfskip( HB_ISNUM( 1 ) ? hb_parni( 1 ) : 1 ); + hb_hbfskip( hb_parnidef( 1, 1 ) ); } HB_FUNC( HB_FREADLN ) diff --git a/harbour/contrib/hbmysql/mysql.c b/harbour/contrib/hbmysql/mysql.c index 1b47402159..c3ae0d5150 100644 --- a/harbour/contrib/hbmysql/mysql.c +++ b/harbour/contrib/hbmysql/mysql.c @@ -176,8 +176,8 @@ HB_FUNC( MYSQL_REAL_CONNECT ) /* MYSQL * mysql_real_connect( MYSQL *, char * hos #if MYSQL_VERSION_ID > 32200 MYSQL * mysql; - unsigned int port = HB_ISNUM( 4 ) ? ( unsigned int ) hb_parni( 4 ) : MYSQL_PORT; - unsigned int flags = HB_ISNUM( 5 ) ? ( unsigned int ) hb_parni( 5 ) : 0; + unsigned int port = ( unsigned int ) hb_parnidef( 4, MYSQL_PORT ); + unsigned int flags = ( unsigned int ) hb_parnidef( 5, 0 ); if( ( mysql = mysql_init( ( MYSQL * ) NULL ) ) != NULL ) { diff --git a/harbour/contrib/hbmzip/hbmzip.c b/harbour/contrib/hbmzip/hbmzip.c index 3f58dab6d2..f8edd72a2f 100644 --- a/harbour/contrib/hbmzip/hbmzip.c +++ b/harbour/contrib/hbmzip/hbmzip.c @@ -153,7 +153,7 @@ HB_FUNC( HB_ZIPOPEN ) if( szFileName ) { zipcharpc pszGlobalComment = NULL; - zipFile hZip = zipOpen2( szFileName, HB_ISNUM( 2 ) ? hb_parni( 2 ) : APPEND_STATUS_CREATE, + zipFile hZip = zipOpen2( szFileName, hb_parnidef( 2, APPEND_STATUS_CREATE ), &pszGlobalComment, NULL ); if( hZip ) { @@ -202,8 +202,8 @@ HB_FUNC( HB_ZIPFILECREATE ) if( hZip ) { - int iMethod = HB_ISNUM( 7 ) ? hb_parni( 7 ) : Z_DEFLATED; - int iLevel = HB_ISNUM( 8 ) ? hb_parni( 8 ) : Z_DEFAULT_COMPRESSION; + int iMethod = hb_parnidef( 7, Z_DEFLATED ); + int iLevel = hb_parnidef( 8, Z_DEFAULT_COMPRESSION ); long lJulian, lMillisec; int iY, iM, iD; diff --git a/harbour/contrib/hbnetio/netiosrv.c b/harbour/contrib/hbnetio/netiosrv.c index 3b430e4cb8..1f677e6a99 100644 --- a/harbour/contrib/hbnetio/netiosrv.c +++ b/harbour/contrib/hbnetio/netiosrv.c @@ -599,7 +599,7 @@ HB_FUNC( NETIO_ACCEPT ) if( lsd && lsd->sd != HB_NO_SOCKET && !lsd->stop ) { - HB_MAXINT timeout = HB_ISNUM( 2 ) ? hb_parnint( 2 ) : -1; + HB_MAXINT timeout = hb_parnintdef( 2, -1 ); HB_SOCKET connsd; int iLevel, iStrategy, keylen = ( int ) hb_parclen( 3 ); diff --git a/harbour/contrib/hbssl/bio.c b/harbour/contrib/hbssl/bio.c index 8a2e1781a2..5e0f389a87 100644 --- a/harbour/contrib/hbssl/bio.c +++ b/harbour/contrib/hbssl/bio.c @@ -207,7 +207,7 @@ HB_FUNC( BIO_SET_FD ) BIO * bio = hb_BIO_par( 1 ); if( bio ) - hb_retni( BIO_set_fd( bio, hb_parnl( 2 ), HB_ISNUM( 3 ) ? hb_parni( 3 ) : BIO_NOCLOSE ) ); + hb_retni( BIO_set_fd( bio, hb_parnl( 2 ), hb_parnidef( 3, BIO_NOCLOSE ) ) ); else hb_errRT_BASE( EG_ARG, 2010, NULL, HB_ERR_FUNCNAME, HB_ERR_ARGS_BASEPARAMS ); } @@ -387,7 +387,7 @@ HB_FUNC( BIO_SET_CLOSE ) BIO * bio = hb_BIO_par( 1 ); if( bio ) - hb_retni( BIO_set_close( bio, HB_ISNUM( 2 ) ? hb_parni( 2 ) : BIO_NOCLOSE ) ); + hb_retni( BIO_set_close( bio, hb_parnidef( 2, BIO_NOCLOSE ) ) ); else hb_errRT_BASE( EG_ARG, 2010, NULL, HB_ERR_FUNCNAME, HB_ERR_ARGS_BASEPARAMS ); } @@ -405,7 +405,7 @@ HB_FUNC( BIO_GET_CLOSE ) HB_FUNC( BIO_NEW_SOCKET ) { if( HB_ISNUM( 1 ) ) - hb_retptr( BIO_new_socket( hb_parni( 1 ), HB_ISNUM( 2 ) ? hb_parni( 2 ) : BIO_NOCLOSE ) ); + hb_retptr( BIO_new_socket( hb_parni( 1 ), hb_parnidef( 2, BIO_NOCLOSE ) ) ); else hb_errRT_BASE( EG_ARG, 2010, NULL, HB_ERR_FUNCNAME, HB_ERR_ARGS_BASEPARAMS ); } @@ -414,7 +414,7 @@ HB_FUNC( BIO_NEW_DGRAM ) { #ifndef OPENSSL_NO_DGRAM if( HB_ISNUM( 1 ) ) - hb_retptr( BIO_new_dgram( hb_parni( 1 ), HB_ISNUM( 2 ) ? hb_parni( 2 ) : BIO_NOCLOSE ) ); + hb_retptr( BIO_new_dgram( hb_parni( 1 ), hb_parnidef( 2, BIO_NOCLOSE ) ) ); else hb_errRT_BASE( EG_ARG, 2010, NULL, HB_ERR_FUNCNAME, HB_ERR_ARGS_BASEPARAMS ); #else @@ -425,7 +425,7 @@ HB_FUNC( BIO_NEW_DGRAM ) HB_FUNC( BIO_NEW_FD ) { if( HB_ISNUM( 1 ) ) - hb_retptr( BIO_new_fd( hb_parnl( 1 ), HB_ISNUM( 2 ) ? hb_parni( 2 ) : BIO_NOCLOSE ) ); + hb_retptr( BIO_new_fd( hb_parnl( 1 ), hb_parnidef( 2, BIO_NOCLOSE ) ) ); else hb_errRT_BASE( EG_ARG, 2010, NULL, HB_ERR_FUNCNAME, HB_ERR_ARGS_BASEPARAMS ); } diff --git a/harbour/contrib/hbssl/hbssl.c b/harbour/contrib/hbssl/hbssl.c index 61e13c297b..fbcfeca17d 100644 --- a/harbour/contrib/hbssl/hbssl.c +++ b/harbour/contrib/hbssl/hbssl.c @@ -66,9 +66,9 @@ HB_FUNC( HB_SSL_READ_ALL ) if( ssl ) { - int iMax = ISNUM( 3 ) ? hb_parni( 3 ) : INT_MAX; - int iTimeout = ISNUM( 4 ) ? hb_parni( 4 ) : -1; - int iBufferSize = HB_ISNUM( 5 ) ? hb_parni( 5 ) : 80; + int iMax = hb_parnidef( 3, INT_MAX ); + int iTimeout = hb_parnidef( 4, -1 ); + int iBufferSize = hb_parnidef( 5, 80 ); int iPos = 0; int iAllocated = 0; @@ -135,9 +135,9 @@ HB_FUNC( HB_SSL_READ_LINE ) if( ssl ) { - int iMax = ISNUM( 3 ) ? hb_parni( 3 ) : INT_MAX; - int iTimeout = ISNUM( 4 ) ? hb_parni( 4 ) : -1; - int iBufferSize = HB_ISNUM( 5 ) ? hb_parni( 5 ) : 80; + int iMax = hb_parnidef( 3, INT_MAX ); + int iTimeout = hb_parnidef( 4, -1 ); + int iBufferSize = hb_parnidef( 5, 80 ); int iPos = 0; int iAllocated = 0; diff --git a/harbour/contrib/hbssl/sslctx.c b/harbour/contrib/hbssl/sslctx.c index 21101a77cf..46bf4d7fe6 100644 --- a/harbour/contrib/hbssl/sslctx.c +++ b/harbour/contrib/hbssl/sslctx.c @@ -123,9 +123,9 @@ HB_FUNC( SSL_CTX_NEW ) void ** ph = ( void ** ) hb_gcAllocate( sizeof( SSL_CTX * ), &s_gcSSL_CTX_funcs ); #if OPENSSL_VERSION_NUMBER < 0x10000000L - SSL_CTX * ctx = SSL_CTX_new( ( SSL_METHOD * ) hb_ssl_method_id_to_ptr( HB_ISNUM( 1 ) ? hb_parni( 1 ) : HB_SSL_CTX_NEW_METHOD_DEFAULT ) ); + SSL_CTX * ctx = SSL_CTX_new( ( SSL_METHOD * ) hb_ssl_method_id_to_ptr( hb_parnidef( 1, HB_SSL_CTX_NEW_METHOD_DEFAULT ) ) ); #else - SSL_CTX * ctx = SSL_CTX_new( hb_ssl_method_id_to_ptr( HB_ISNUM( 1 ) ? hb_parni( 1 ) : HB_SSL_CTX_NEW_METHOD_DEFAULT ) ); + SSL_CTX * ctx = SSL_CTX_new( hb_ssl_method_id_to_ptr( hb_parnidef( 1, HB_SSL_CTX_NEW_METHOD_DEFAULT ) ) ); #endif * ph = ( void * ) ctx; diff --git a/harbour/contrib/hbwin/wapi_shellapi.c b/harbour/contrib/hbwin/wapi_shellapi.c index c8e0d2fd9d..6147e0f63d 100644 --- a/harbour/contrib/hbwin/wapi_shellapi.c +++ b/harbour/contrib/hbwin/wapi_shellapi.c @@ -72,7 +72,7 @@ HB_FUNC( WAPI_SHELLEXECUTE ) HB_PARSTRDEF( 3, &hFile, NULL ), HB_PARSTR( 4, &hParameters, NULL ), HB_PARSTR( 5, &hDirectory, NULL ), - HB_ISNUM( 6 ) ? hb_parni( 6 ) : SW_SHOWNORMAL /* nShowCmd */ ) ); + hb_parnidef( 6, SW_SHOWNORMAL ) /* nShowCmd */ ) ); hb_strfree( hOperation ); hb_strfree( hFile ); diff --git a/harbour/contrib/hbwin/win_com.c b/harbour/contrib/hbwin/win_com.c index 6c75709391..fe25635fe1 100644 --- a/harbour/contrib/hbwin/win_com.c +++ b/harbour/contrib/hbwin/win_com.c @@ -662,11 +662,11 @@ HB_FUNC( WIN_COMSETTIMEOUTS ) DCB CurDCB; COMMTIMEOUTS Timeouts; - Timeouts.ReadIntervalTimeout = HB_ISNUM( 2 ) ? ( DWORD ) hb_parnl( 2 ) : ( DWORD ) -1; - Timeouts.ReadTotalTimeoutMultiplier = HB_ISNUM( 3 ) ? ( DWORD ) hb_parnl( 3 ) : ( DWORD ) -1; - Timeouts.ReadTotalTimeoutConstant = HB_ISNUM( 4 ) ? ( DWORD ) hb_parnl( 4 ) : ( DWORD ) -1; - Timeouts.WriteTotalTimeoutMultiplier = HB_ISNUM( 5 ) ? ( DWORD ) hb_parnl( 5 ) : ( DWORD ) -1; - Timeouts.WriteTotalTimeoutConstant = HB_ISNUM( 6 ) ? ( DWORD ) hb_parnl( 6 ) : ( DWORD ) -1; + Timeouts.ReadIntervalTimeout = ( DWORD ) hb_parnldef( 2, -1 ); + Timeouts.ReadTotalTimeoutMultiplier = ( DWORD ) hb_parnldef( 3, -1 ); + Timeouts.ReadTotalTimeoutConstant = ( DWORD ) hb_parnldef( 4, -1 ); + Timeouts.WriteTotalTimeoutMultiplier = ( DWORD ) hb_parnldef( 5, -1 ); + Timeouts.WriteTotalTimeoutConstant = ( DWORD ) hb_parnldef( 6, -1 ); s_PortData[ iPort ].iFunction = HB_WIN_COM_FUN_GETCOMMSTATE; s_PortData[ iPort ].dwError = 0; @@ -744,7 +744,7 @@ HB_FUNC( WIN_COMDEBUGDCB ) if( iPort >= 0 && iPort < ( int ) HB_SIZEOFARRAY( s_PortData ) && ( hCommPort = s_PortData[ iPort ].hPort ) != INVALID_HANDLE_VALUE ) { - int iDebugLevel = HB_ISNUM( 2 ) ? hb_parni( 2 ) : HB_WIN_COM_DBGBASIC; + int iDebugLevel = hb_parnidef( 2, HB_WIN_COM_DBGBASIC ); DCB CurDCB; COMMTIMEOUTS CurCOMMTIMEOUTS; COMMPROP CurCOMMPROP; diff --git a/harbour/contrib/rddads/adsfunc.c b/harbour/contrib/rddads/adsfunc.c index 36a6817ef2..e6cdcbf95c 100644 --- a/harbour/contrib/rddads/adsfunc.c +++ b/harbour/contrib/rddads/adsfunc.c @@ -1321,7 +1321,7 @@ HB_FUNC( ADSCOPYTABLE ) { if( HB_ISCHAR( 1 ) ) hb_retl( AdsCopyTable( ( pArea->hOrdCurrent ) ? pArea->hOrdCurrent : pArea->hTable /* hIndex */, /* If an index is active copy table in indexed order. */ - ( UNSIGNED16 ) ( HB_ISNUM( 2 ) ? hb_parni( 2 ) : ADS_RESPECTFILTERS ) /* usFilterOption */, + ( UNSIGNED16 ) hb_parnidef( 2, ADS_RESPECTFILTERS ) /* usFilterOption */, ( UNSIGNED8 * ) hb_parcx( 1 ) /* pucFile */ ) == AE_SUCCESS ); else hb_errRT_DBCMD( EG_ARG, 1014, NULL, HB_ERR_FUNCNAME ); @@ -1341,7 +1341,7 @@ HB_FUNC( ADSCONVERTTABLE ) hb_retl( AdsConvertTable( pArea->hTable, ADS_IGNOREFILTERS, ( UNSIGNED8 * ) hb_parcx( 1 ) /* pucFile */, - ( UNSIGNED16 ) ( HB_ISNUM( 2 ) ? hb_parni( 2 ) : ADS_ADT ) /* usTableType */ ) == AE_SUCCESS ); + ( UNSIGNED16 ) hb_parnidef( 2, ADS_ADT ) /* usTableType */ ) == AE_SUCCESS ); } else hb_errRT_DBCMD( EG_ARG, 1014, NULL, HB_ERR_FUNCNAME ); @@ -1666,7 +1666,7 @@ HB_FUNC( ADSDDREMOVETABLE ) taken from 4th parameter instead of 3rd. [vszakats] */ hb_retl( AdsDDRemoveTable( HB_ADS_PARCONNECTION( 4 ) /* hConnect */, ( UNSIGNED8 * ) hb_parcx( 1 ) /* pTableName */, - ( UNSIGNED16 ) ( HB_ISNUM( 2 ) ? hb_parni( 2 ) : ( HB_ISLOG( 2 ) ? hb_parl( 2 ) : 0 ) ) /* usDeleteFiles */ ) == AE_SUCCESS ); + ( UNSIGNED16 ) ( HB_ISNUM( 2 ) ? hb_parni( 2 ) : hb_parldef( 2, 0 ) ) /* usDeleteFiles */ ) == AE_SUCCESS ); #else hb_retl( HB_FALSE ); #endif @@ -1678,7 +1678,7 @@ HB_FUNC( ADSDDREMOVEINDEXFILE ) hb_retl( AdsDDRemoveIndexFile( HB_ADS_PARCONNECTION( 4 ) /* hConnect */, ( UNSIGNED8 * ) hb_parcx( 1 ) /* pTableName */, ( UNSIGNED8 * ) hb_parcx( 2 ) /* pIndexName */, - ( UNSIGNED16 ) ( HB_ISNUM( 3 ) ? hb_parni( 3 ) : ( HB_ISLOG( 3 ) ? hb_parl( 3 ) : 0 ) ) /* usDeleteFiles */ ) == AE_SUCCESS ); + ( UNSIGNED16 ) ( HB_ISNUM( 3 ) ? hb_parni( 3 ) : hb_parldef( 3, 0 ) ) /* usDeleteFiles */ ) == AE_SUCCESS ); #else hb_retl( HB_FALSE ); #endif @@ -1715,7 +1715,7 @@ HB_FUNC( ADSCONNECT60 ) ( UNSIGNED16 ) hb_parni( 2 ) /* usServerTypes */, ( UNSIGNED8 * ) hb_parc( 3 ) /* pucUserName */, ( UNSIGNED8 * ) hb_parc( 4 ) /* pucPassword */, - ( UNSIGNED32 ) ( HB_ISNUM( 5 ) ? hb_parnl( 5 ) : ADS_DEFAULT ) /* ulOptions */, + ( UNSIGNED32 ) hb_parnldef( 5, ADS_DEFAULT ) /* ulOptions */, &hConnect ) == AE_SUCCESS ) { hb_ads_hConnect = hConnect; /* set new default */ @@ -1996,7 +1996,7 @@ HB_FUNC( ADSTESTLOGIN ) ( UNSIGNED16 ) hb_parni( 2 ) /* usServerTypes */, pucUserName, ( UNSIGNED8 * ) hb_parc( 4 ) /* pucPassword */, - ( UNSIGNED32 ) ( HB_ISNUM( 5 ) ? hb_parnl( 5 ) : ADS_DEFAULT ) /* ulOptions */, + ( UNSIGNED32 ) hb_parnldef( 5, ADS_DEFAULT ) /* ulOptions */, &adsTestHandle ) == AE_SUCCESS ) { if( HB_ISBYREF( 7 ) ) @@ -2204,23 +2204,23 @@ HB_FUNC( ADSCREATEFTSINDEX ) if( pArea ) hb_retnl( AdsCreateFTSIndex( pArea->hTable, - ( UNSIGNED8 * ) hb_parc( 1 ) /* pucFileName */ , /* if NULL or the base name is the same as the table, then creates a compound AutoOpen index. */ - ( UNSIGNED8 * ) hb_parc( 2 ) /* pucTag */ , - ( UNSIGNED8 * ) hb_parc( 3 ) /* pucField */ , - ( UNSIGNED32 ) HB_ISNUM( 4 ) ? hb_parnl( 4 ) : ADS_DEFAULT /* ulPageSize */ , - ( UNSIGNED32 ) HB_ISNUM( 5 ) ? hb_parnl( 5 ) : 3 /* ulMinWordLen */ , - ( UNSIGNED32 ) HB_ISNUM( 6 ) ? hb_parnl( 6 ) : 30 /* ulMaxWordLen */ , - ( UNSIGNED16 ) hb_parldef( 7, 1 ) /* usUseDefaultDelim */ , - ( UNSIGNED8 * ) hb_parc( 8 ) /* pucDelimiters */ , - ( UNSIGNED16 ) hb_parldef( 9, 1 ) /* usUseDefaultNoise */ , - ( UNSIGNED8 * ) hb_parc( 10 ) /* pucNoiseWords */ , - ( UNSIGNED16 ) hb_parldef( 11, 1 ) /* usUseDefaultDrop */ , - ( UNSIGNED8 * ) hb_parc( 12 ) /* pucDropChars */ , - ( UNSIGNED16 ) hb_parldef( 13, 1 ) /* usUseDefaultConditionals */ , - ( UNSIGNED8 * ) hb_parc( 14 ) /* pucConditionalChars */ , - ( UNSIGNED8 * ) hb_parc( 15 ) /* pucReserved1 */ , - ( UNSIGNED8 * ) hb_parc( 16 ) /* pucReserved2 */ , - ( UNSIGNED32 ) HB_ISNUM( 17 ) ? hb_parnl( 17 ) : ADS_DEFAULT /* ulOptions */ ) ); + ( UNSIGNED8 * ) hb_parc( 1 ) /* pucFileName */ , /* if NULL or the base name is the same as the table, then creates a compound AutoOpen index. */ + ( UNSIGNED8 * ) hb_parc( 2 ) /* pucTag */ , + ( UNSIGNED8 * ) hb_parc( 3 ) /* pucField */ , + ( UNSIGNED32 ) hb_parnldef( 4, ADS_DEFAULT ) /* ulPageSize */ , + ( UNSIGNED32 ) hb_parnldef( 5, 3 ) /* ulMinWordLen */ , + ( UNSIGNED32 ) hb_parnldef( 6, 30 ) /* ulMaxWordLen */ , + ( UNSIGNED16 ) hb_parldef( 7, 1 ) /* usUseDefaultDelim */ , + ( UNSIGNED8 * ) hb_parc( 8 ) /* pucDelimiters */ , + ( UNSIGNED16 ) hb_parldef( 9, 1 ) /* usUseDefaultNoise */ , + ( UNSIGNED8 * ) hb_parc( 10 ) /* pucNoiseWords */ , + ( UNSIGNED16 ) hb_parldef( 11, 1 ) /* usUseDefaultDrop */ , + ( UNSIGNED8 * ) hb_parc( 12 ) /* pucDropChars */ , + ( UNSIGNED16 ) hb_parldef( 13, 1 ) /* usUseDefaultConditionals */ , + ( UNSIGNED8 * ) hb_parc( 14 ) /* pucConditionalChars */ , + ( UNSIGNED8 * ) hb_parc( 15 ) /* pucReserved1 */ , + ( UNSIGNED8 * ) hb_parc( 16 ) /* pucReserved2 */ , + ( UNSIGNED32 ) hb_parnldef( 17, ADS_DEFAULT ) /* ulOptions */ ) ); else hb_errRT_DBCMD( EG_NOTABLE, 2001, NULL, HB_ERR_FUNCNAME ); #else @@ -2233,7 +2233,7 @@ HB_FUNC( ADSCREATESAVEPOINT ) #if ADS_LIB_VERSION >= 800 hb_retnl( AdsCreateSavepoint( HB_ADS_PARCONNECTION( 1 ) /* hConnect */, ( UNSIGNED8 * ) hb_parc( 2 ) /* pucSavepoint */, - ( UNSIGNED32 ) ( HB_ISNUM( 3 ) ? hb_parnl( 3 ) : ADS_DEFAULT ) /* ulOptions */ ) ); + ( UNSIGNED32 ) hb_parnldef( 3, ADS_DEFAULT ) /* ulOptions */ ) ); #else hb_retnl( 0 ); #endif @@ -2244,7 +2244,7 @@ HB_FUNC( ADSROLLBACKSAVEPOINT ) #if ADS_LIB_VERSION >= 800 hb_retnl( AdsRollbackTransaction80( HB_ADS_PARCONNECTION( 1 ) /* hConnect */, ( UNSIGNED8 * ) hb_parc( 2 ) /* pucSavepoint */, - ( UNSIGNED32 ) ( HB_ISNUM( 3 ) ? hb_parnl( 3 ) : ADS_DEFAULT ) /* ulOptions */ ) ); + ( UNSIGNED32 ) hb_parnldef( 3, ADS_DEFAULT ) /* ulOptions */ ) ); #else hb_retnl( 0 ); #endif @@ -2258,7 +2258,7 @@ HB_FUNC( ADSDDCREATELINK ) ( UNSIGNED8 * ) hb_parcx( 3 ) /* pucServerPath */, ( UNSIGNED8 * ) hb_parc( 4 ) /* pucUserName */, ( UNSIGNED8 * ) hb_parc( 5 ) /* pucPassword */, - ( UNSIGNED32 ) ( HB_ISNUM( 6 ) ? hb_parnl( 6 ) : ADS_DEFAULT ) /* ulOptions */ ) == AE_SUCCESS ); + ( UNSIGNED32 ) hb_parnldef( 6, ADS_DEFAULT ) /* ulOptions */ ) == AE_SUCCESS ); #else hb_retl( HB_FALSE ); #endif @@ -2272,7 +2272,7 @@ HB_FUNC( ADSDDMODIFYLINK ) ( UNSIGNED8 * ) hb_parcx( 3 ) /* pucServerPath */, ( UNSIGNED8 * ) hb_parc( 4 ) /* pucUserName */, ( UNSIGNED8 * ) hb_parc( 5 ) /* pucPassword */, - ( UNSIGNED32 ) ( HB_ISNUM( 6 ) ? hb_parnl( 6 ) : ADS_DEFAULT ) /* ulOptions */ ) == AE_SUCCESS ); + ( UNSIGNED32 ) hb_parnldef( 6, ADS_DEFAULT ) /* ulOptions */ ) == AE_SUCCESS ); #else hb_retl( HB_FALSE ); #endif diff --git a/harbour/contrib/rddads/adsmgmnt.c b/harbour/contrib/rddads/adsmgmnt.c index fea6e27863..0a83a66b65 100644 --- a/harbour/contrib/rddads/adsmgmnt.c +++ b/harbour/contrib/rddads/adsmgmnt.c @@ -287,7 +287,7 @@ HB_FUNC( ADSMGGETCONFIGINFO ) &stConfigMemory, &usConfigMemoryStructSize ) == AE_SUCCESS ) { - switch( HB_ISNUM( 1 ) ? hb_parni( 1 ) : 1 /* iOption */ ) /* Pass 0 for Values, 1 for memory */ + switch( hb_parnidef( 1, 1 ) /* iOption */ ) /* Pass 0 for Values, 1 for memory */ { case 0: hb_reta( 25 ); @@ -370,7 +370,7 @@ HB_FUNC( ADSMGGETCONFIGINFO ) /* Return array of connected users */ HB_FUNC( ADSMGGETUSERNAMES ) { - UNSIGNED16 usArrayLen = HB_ISNUM( 2 ) ? ( UNSIGNED16 ) hb_parni( 2 ) : 2000; /* needed for array memory allocation; caller can set with 2nd arg */ + UNSIGNED16 usArrayLen = ( UNSIGNED16 ) hb_parnidef( 2, 2000 ); /* needed for array memory allocation; caller can set with 2nd arg */ UNSIGNED16 usStructSize = sizeof( ADS_MGMT_USER_INFO ); ADS_MGMT_USER_INFO * pastUserInfo = ( ADS_MGMT_USER_INFO * ) hb_xgrab( sizeof( ADS_MGMT_USER_INFO ) * usArrayLen ); @@ -472,7 +472,7 @@ HB_FUNC( ADSMGGETLOCKOWNER ) info, see ADSMGGETOPENTABLES2(). */ HB_FUNC( ADSMGGETOPENTABLES ) /* nMaxNumberOfFilesToReturn, cUserName, nConnection */ { - UNSIGNED16 usArrayLen = HB_ISNUM( 1 ) ? ( UNSIGNED16 ) hb_parni( 1 ) : 300; + UNSIGNED16 usArrayLen = ( UNSIGNED16 ) hb_parnidef( 1, 300 ); UNSIGNED16 usStructSize = sizeof( ADS_MGMT_TABLE_INFO ); ADS_MGMT_TABLE_INFO * astOpenTableInfo = ( ADS_MGMT_TABLE_INFO * ) hb_xgrab( sizeof( ADS_MGMT_TABLE_INFO ) * usArrayLen ); @@ -504,7 +504,7 @@ HB_FUNC( ADSMGGETOPENTABLES ) /* nMaxNumberOfFilesToReturn, cUserName, nConnecti HB_FUNC( ADSMGGETOPENTABLES2 ) /* nMaxNumberOfFilesToReturn, cUserName, nConnection */ { - UNSIGNED16 usArrayLen = HB_ISNUM( 1 ) ? ( UNSIGNED16 ) hb_parni( 1 ) : 300; + UNSIGNED16 usArrayLen = ( UNSIGNED16 ) hb_parnidef( 1, 300 ); UNSIGNED16 usStructSize = sizeof( ADS_MGMT_TABLE_INFO ); ADS_MGMT_TABLE_INFO * astOpenTableInfo = ( ADS_MGMT_TABLE_INFO * ) hb_xgrab( sizeof( ADS_MGMT_TABLE_INFO ) * usArrayLen ); @@ -542,7 +542,7 @@ HB_FUNC( ADSMGGETOPENTABLES2 ) /* nMaxNumberOfFilesToReturn, cUserName, nConnect HB_FUNC( ADSMGGETOPENINDEXES ) /* nMaxNumberOfFilesToReturn, cTableName, cUserName, nConnection */ { - UNSIGNED16 usArrayLen = HB_ISNUM( 1 ) ? ( UNSIGNED16 ) hb_parni( 1 ) : 300; + UNSIGNED16 usArrayLen = ( UNSIGNED16 ) hb_parnidef( 1, 300 ); UNSIGNED16 usStructSize = sizeof( ADS_MGMT_INDEX_INFO ); ADS_MGMT_INDEX_INFO * astOpenIndexInfo = ( ADS_MGMT_INDEX_INFO * ) hb_xgrab( sizeof( ADS_MGMT_INDEX_INFO ) * usArrayLen ); @@ -575,7 +575,7 @@ HB_FUNC( ADSMGGETOPENINDEXES ) /* nMaxNumberOfFilesToReturn, cTableName, cUserNa HB_FUNC( ADSMGGETLOCKS ) { - UNSIGNED16 usArrayLen = HB_ISNUM( 1 ) ? ( UNSIGNED16 ) hb_parni( 1 ) : 2000; + UNSIGNED16 usArrayLen = ( UNSIGNED16 ) hb_parnidef( 1, 2000 ); UNSIGNED16 usStructSize = sizeof( ADS_MGMT_RECORD_INFO ); ADS_MGMT_RECORD_INFO * astRecordInfo = ( ADS_MGMT_RECORD_INFO * ) hb_xgrab( sizeof( ADS_MGMT_RECORD_INFO ) * usArrayLen ); @@ -608,7 +608,7 @@ HB_FUNC( ADSMGGETLOCKS ) HB_FUNC( ADSMGGETWORKERTHREADACTIVITY ) { - UNSIGNED16 usArrayLen = HB_ISNUM( 1 ) ? ( UNSIGNED16 ) hb_parni( 1 ) : 2000; + UNSIGNED16 usArrayLen = ( UNSIGNED16 ) hb_parnidef( 1, 2000 ); UNSIGNED16 usStructSize = sizeof( ADS_MGMT_THREAD_ACTIVITY ); ADS_MGMT_THREAD_ACTIVITY * astWorkerThreadActivity = ( ADS_MGMT_THREAD_ACTIVITY * ) hb_xgrab( sizeof( ADS_MGMT_THREAD_ACTIVITY ) * usArrayLen ); diff --git a/harbour/contrib/rddads/rddads.h b/harbour/contrib/rddads/rddads.h index d193d9449f..7adc81764e 100644 --- a/harbour/contrib/rddads/rddads.h +++ b/harbour/contrib/rddads/rddads.h @@ -186,7 +186,7 @@ typedef ADSAREA * ADSAREAP; # undef ADS_USE_OEM_TRANSLATION #endif -#define HB_ADS_PARCONNECTION( n ) ( ISNUM( n ) ? ( ADSHANDLE ) hb_parnint( n ) : hb_ads_hConnect ) +#define HB_ADS_PARCONNECTION( n ) ( ( ADSHANDLE ) hb_parnintdef( n, hb_ads_hConnect ) ) #define HB_ADS_RETCONNECTION( h ) hb_retnint( h ) #define HB_ADS_GETCONNECTION( p ) ( ( hb_itemType( p ) & HB_IT_NUMERIC ) ? ( ADSHANDLE ) hb_itemGetNInt( p ) : hb_ads_hConnect ) #define HB_ADS_PUTCONNECTION( p, h ) hb_itemPutNInt( ( p ), ( ADSHANDLE ) ( h ) ) diff --git a/harbour/contrib/xhb/xhbfunc.c b/harbour/contrib/xhb/xhbfunc.c index cc84e1d340..8f5314a0a2 100644 --- a/harbour/contrib/xhb/xhbfunc.c +++ b/harbour/contrib/xhb/xhbfunc.c @@ -303,7 +303,7 @@ HB_FUNC_EXTERN( NETNAME ); HB_FUNC( XHB_NETNAME ) { - if( ISNUM( 1 ) && hb_parni( 1 ) == 1 ) + if( HB_ISNUM( 1 ) && hb_parni( 1 ) == 1 ) HB_FUNC_EXEC( HB_USERNAME ) else HB_FUNC_EXEC( NETNAME ) @@ -314,7 +314,7 @@ HB_FUNC_EXTERN( MEMOWRIT ); HB_FUNC( XHB_MEMOWRIT ) { - if( ISLOG( 3 ) && ! hb_parl( 3 ) ) + if( HB_ISLOG( 3 ) && ! hb_parl( 3 ) ) HB_FUNC_EXEC( HB_MEMOWRIT ) else HB_FUNC_EXEC( MEMOWRIT ) diff --git a/harbour/contrib/xhb/xhbsave.c b/harbour/contrib/xhb/xhbsave.c index 8c8877ef56..f2b6c42a51 100644 --- a/harbour/contrib/xhb/xhbsave.c +++ b/harbour/contrib/xhb/xhbsave.c @@ -62,13 +62,13 @@ static void hb_getScreenRange( int * pusMin, int * pusMax, { iMax = hb_gtMaxRow(); iFrom = hb_parni( 1 ); - iTo = HB_ISNUM( 3 ) ? hb_parni( 3 ) : iMax; + iTo = hb_parnidef( 3, iMax ); } else { iMax = hb_gtMaxCol(); iFrom = hb_parni( 2 ); - iTo = HB_ISNUM( 4 ) ? hb_parni( 4 ) : iMax; + iTo = hb_parnidef( 4, iMax ); } if( iFrom < 0 ) diff --git a/harbour/include/extend.api b/harbour/include/extend.api index ab4c75fbfe..f4b08d81a5 100644 --- a/harbour/include/extend.api +++ b/harbour/include/extend.api @@ -91,7 +91,7 @@ typedef PHB_ITEM ITEM; #define PCOUNT hb_pcount() #define ALENGTH( n ) hb_parinfa( n, 0 ) -#ifndef HB_LEGACY_LEVEL3 +#if defined( HB_LEGACY_TYPES_OFF ) || ! defined( HB_LEGACY_LEVEL3 ) #define ISCHAR( n ) HB_ISCHAR( n ) #define ISNUM( n ) HB_ISNUM( n ) #define ISLOG( n ) HB_ISLOG( n ) diff --git a/harbour/include/hbapi.h b/harbour/include/hbapi.h index 6cbf5cf429..edd6a7fe2c 100644 --- a/harbour/include/hbapi.h +++ b/harbour/include/hbapi.h @@ -245,7 +245,7 @@ HB_EXTERN_BEGIN #define HB_ISDATETIME( n ) ( hb_param( n, HB_IT_DATETIME ) != NULL ) /* Not available in CA-Cl*pper. */ /* Compatibility #defines, deprecated */ -#ifdef HB_LEGACY_LEVEL3 +#if ! defined( HB_LEGACY_TYPES_OFF ) && defined( HB_LEGACY_LEVEL3 ) #define ISNIL( n ) HB_ISNIL( n ) #define ISCHAR( n ) HB_ISCHAR( n ) #define ISNUM( n ) HB_ISNUM( n ) diff --git a/harbour/src/pp/pplib.c b/harbour/src/pp/pplib.c index 9a8e907366..4d1513e90b 100644 --- a/harbour/src/pp/pplib.c +++ b/harbour/src/pp/pplib.c @@ -165,7 +165,7 @@ HB_FUNC( __PP_INIT ) if( pState ) { const char * szPath = hb_parc( 1 ), * szStdCh = hb_parc( 2 ); - HB_BOOL fArchDefs = !ISLOG( 3 ) || hb_parl( 3 ); + HB_BOOL fArchDefs = ! HB_ISLOG( 3 ) || hb_parl( 3 ); PHB_ITEM ppItem; pStatePtr = ( PHB_PP_STATE * ) hb_gcAllocate( sizeof( PHB_PP_STATE ), diff --git a/harbour/src/rtl/dateshb.c b/harbour/src/rtl/dateshb.c index 18097ed590..000cd265a6 100644 --- a/harbour/src/rtl/dateshb.c +++ b/harbour/src/rtl/dateshb.c @@ -238,7 +238,7 @@ HB_FUNC( HB_DTOT ) const char * szTime = hb_parc( 2 ); if( szTime ) hb_timeStampStrGetDT( szTime, &lDate2, &lTime ); - else if( ISNUM( 2 ) ) + else if( HB_ISNUM( 2 ) ) { lTime = ( long ) ( hb_parnd( 2 ) * 1000 ); if( lTime < 0 ) @@ -259,7 +259,7 @@ HB_FUNC( HB_TTOD ) if( hb_partdt( &lDate, &lTime, 1 ) ) { hb_retdl( lDate ); - if( ISBYREF( 2 ) ) + if( HB_ISBYREF( 2 ) ) { const char * szTimeFormat = hb_parc( 3 ); if( szTimeFormat ) diff --git a/harbour/src/rtl/hbregex.c b/harbour/src/rtl/hbregex.c index e242f57f76..0794eadf4c 100644 --- a/harbour/src/rtl/hbregex.c +++ b/harbour/src/rtl/hbregex.c @@ -195,7 +195,7 @@ HB_FUNC( HB_ATX ) { HB_SIZE ulLen = hb_itemGetCLen( pString ); HB_SIZE ulStart = hb_parnl( 4 ); - HB_SIZE ulEnd = ISNUM( 5 ) ? ( HB_SIZE ) hb_parnl( 5 ) : ulLen; + HB_SIZE ulEnd = ( HB_SIZE ) hb_parnldef( 5, ulLen ); if( ulLen && ulStart <= ulLen && ulStart <= ulEnd ) {