From e03dbf59d8dd4b38c8b27ff736d42d4021a3c377 Mon Sep 17 00:00:00 2001 From: Mindaugas Kavaliauskas Date: Thu, 18 Dec 2008 17:53:31 +0000 Subject: [PATCH] 2008-12-18 19:53 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt) * source/compiler/hbopt.c ! one more try to fix passing informatino about redundant variable assignment by preprocessor rules, i.e., _nowarn_* hack removed, using HB_SYMBOL_UNUSED() technique * include/hbclass.ch * include/std.ch ! fixed redundant nScope and GetList assignment * contrib/rddado/adordd.prg * contrib/xhb/cstruct.prg * contrib/xhb/hblog.prg * contrib/xhb/sprintf.prg ! fixed assigned but not used variable --- harbour/ChangeLog | 15 +++++++++++++++ harbour/contrib/rddado/adordd.prg | 23 ++++++++++++----------- harbour/contrib/xhb/cstruct.prg | 7 ++----- harbour/contrib/xhb/hblog.prg | 1 - harbour/contrib/xhb/sprintf.prg | 2 +- harbour/include/hbclass.ch | 18 +++++++++--------- harbour/include/std.ch | 6 +++--- harbour/source/compiler/hbopt.c | 5 ++--- 8 files changed, 44 insertions(+), 33 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index c825323fc9..0442220ba7 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -7,6 +7,21 @@ For example: 2008-12-31 13:59 UTC+0100 Foo Bar (foo.bar foobar.org) */ +2008-12-18 19:53 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt) + * source/compiler/hbopt.c + ! one more try to fix passing informatino about redundant variable + assignment by preprocessor rules, i.e., _nowarn_* hack removed, + using HB_SYMBOL_UNUSED() technique + + * include/hbclass.ch + * include/std.ch + ! fixed redundant nScope and GetList assignment + + * contrib/rddado/adordd.prg + * contrib/xhb/cstruct.prg + * contrib/xhb/hblog.prg + * contrib/xhb/sprintf.prg + ! fixed assigned but not used variable 2008-12-18 17:30 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt) * source/compiler/hbopt.c diff --git a/harbour/contrib/rddado/adordd.prg b/harbour/contrib/rddado/adordd.prg index b982ff3380..5693f20f8e 100644 --- a/harbour/contrib/rddado/adordd.prg +++ b/harbour/contrib/rddado/adordd.prg @@ -803,8 +803,8 @@ RETURN nResult STATIC FUNCTION ADO_RECINFO( nWA, nRecord, nInfoType, uInfo ) LOCAL nResult := SUCCESS - LOCAL oRecordSet := USRRDD_AREADATA( nWA )[ WA_RECORDSET ] - + //LOCAL oRecordSet := USRRDD_AREADATA( nWA )[ WA_RECORDSET ] + HB_SYMOL_USED( nWA ) #ifdef UR_DBRI_DELETED DO CASE CASE nInfoType == UR_DBRI_DELETED @@ -850,7 +850,6 @@ RETURN nResult STATIC FUNCTION ADO_FIELDINFO( nWA, nField, nInfoType, uInfo ) LOCAL nType, nLen - LOCAL nResult := SUCCESS LOCAL oRecordSet := USRRDD_AREADATA( nWA )[ WA_RECORDSET ] DO CASE @@ -957,7 +956,8 @@ RETURN SUCCESS STATIC FUNCTION ADO_PACK( nWA ) - LOCAL oRecordSet := USRRDD_AREADATA( nWA )[ WA_RECORDSET ] + //LOCAL oRecordSet := USRRDD_AREADATA( nWA )[ WA_RECORDSET ] + HB_SYMOL_USED( nWA ) RETURN SUCCESS @@ -974,7 +974,8 @@ RETURN SUCCESS STATIC FUNCTION ADO_LOCK( nWA, aLockInfo ) - LOCAL oRecordSet := USRRDD_AREADATA( nWA )[ WA_RECORDSET ] + //LOCAL oRecordSet := USRRDD_AREADATA( nWA )[ WA_RECORDSET ] + HB_SYMOL_USED( nWA ) aLockInfo[ UR_LI_METHOD ] := DBLM_MULTIPLE aLockInfo[ UR_LI_RECORD ] := RECNO() @@ -1253,7 +1254,7 @@ STATIC FUNCTION ADO_EVALBLOCK( nArea, bBlock, uResult ) RETURN SUCCESS STATIC FUNCTION ADO_EXISTS( nRdd, cTable, cIndex, ulConnect ) - LOCAL n + //LOCAL n LOCAL lRet := FAILURE LOCAL aRData := USRRDD_RDDDATA( nRDD ) @@ -1261,13 +1262,13 @@ STATIC FUNCTION ADO_EXISTS( nRdd, cTable, cIndex, ulConnect ) IF ! Empty( cTable ) .AND. ! Empty( aRData[ WA_CATALOG ] ) TRY - n := aRData[ WA_CATALOG ]:Tables( cTable ) + //n := aRData[ WA_CATALOG ]:Tables( cTable ) lRet := SUCCESS CATCH END TRY IF ! Empty( cIndex ) TRY - n := aRData[ WA_CATALOG ]:Tables( cTable ):Indexes( cIndex ) + //n := aRData[ WA_CATALOG ]:Tables( cTable ):Indexes( cIndex ) lRet := SUCCESS CATCH END TRY @@ -1277,7 +1278,7 @@ STATIC FUNCTION ADO_EXISTS( nRdd, cTable, cIndex, ulConnect ) RETURN lRet STATIC FUNCTION ADO_DROP( nRdd, cTable, cIndex, ulConnect ) - LOCAL n + //LOCAL n LOCAL lRet := FAILURE LOCAL aRData := USRRDD_RDDDATA( nRDD ) @@ -1285,13 +1286,13 @@ STATIC FUNCTION ADO_DROP( nRdd, cTable, cIndex, ulConnect ) IF ! Empty( cTable ) .AND. ! Empty( aRData[ WA_CATALOG ] ) TRY - n := aRData[ WA_CATALOG ]:Tables:Delete( cTable ) + //n := aRData[ WA_CATALOG ]:Tables:Delete( cTable ) lRet := SUCCESS CATCH END TRY IF ! Empty( cIndex ) TRY - n := aRData[ WA_CATALOG ]:Tables( cTable ):Indexes:Delete( cIndex ) + //n := aRData[ WA_CATALOG ]:Tables( cTable ):Indexes:Delete( cIndex ) lRet := SUCCESS CATCH END TRY diff --git a/harbour/contrib/xhb/cstruct.prg b/harbour/contrib/xhb/cstruct.prg index 211926c3a9..c26d8da410 100644 --- a/harbour/contrib/xhb/cstruct.prg +++ b/harbour/contrib/xhb/cstruct.prg @@ -359,16 +359,14 @@ Return //---------------------------------------------------------------------------// Function HB_CStructureFromID( nID, nAlign ) - LOCAL hClass, oStructure, lInplace + LOCAL hClass, oStructure LOCAL oErr //TraceLog( nId, s_aClasses ) IF nID > CTYPE_STRUCTURE_PTR - lInplace := .F. nID -= CTYPE_STRUCTURE_PTR ELSEIF nID > CTYPE_STRUCTURE - lInplace := .T. nID -= CTYPE_STRUCTURE ELSE oErr := ErrorNew() @@ -566,7 +564,6 @@ RETURN QSelf():InternalBuffer STATIC Function DeValue( lAdopt ) //LOCAL aValues := {} - LOCAL nLen := Len( QSelf() ) - CLASS_PROPERTIES LOCAL Buffer := QSelf():InternalBuffer //TraceLog( QSelf():ClassName(), QSelf():nAlign, Buffer, Len( Buffer ), lAdopt ) @@ -577,7 +574,7 @@ STATIC Function DeValue( lAdopt ) //TraceLog( "EMPTY Buffer passed to " + ProcName() ) ELSEIF Len( Buffer ) < QSelf():SizeOf //TraceLog( "Should have been caught at ::Buffer()!!!", Buffer ) - Buffer := PadR( Buffer, QSelf():SizeOf, Chr(0) ) + //Buffer := PadR( Buffer, QSelf():SizeOf, Chr(0) ) ELSE HB_StructureToArray( Buffer, QSelf():aCTypes, QSelf():nAlign, lAdopt, QSelf() ) ENDIF diff --git a/harbour/contrib/xhb/hblog.prg b/harbour/contrib/xhb/hblog.prg index 042efa5991..4a3af9d6e5 100644 --- a/harbour/contrib/xhb/hblog.prg +++ b/harbour/contrib/xhb/hblog.prg @@ -289,7 +289,6 @@ RETURN */ PROCEDURE Log( cMessage, nPriority ) CLASS HB_Logger LOCAL oChannel - LOCAL cPrefix := "" IF nPriority == NIL nPriority := ::nDefaultPriority diff --git a/harbour/contrib/xhb/sprintf.prg b/harbour/contrib/xhb/sprintf.prg index cfaea3ee7d..e057ea49b7 100644 --- a/harbour/contrib/xhb/sprintf.prg +++ b/harbour/contrib/xhb/sprintf.prg @@ -55,7 +55,7 @@ FUNCTION hb_sprintf( ... ) LOCAL aPar, cReturn, nPar, nPos, cTok - LOCAL nLen := 0, lUnsigned := .F., l0 := .F., lSign := .F., nDec, xVal + LOCAL nLen := 0, lUnsigned, l0 := .F., lSign := .F., nDec, xVal LOCAL cString aPar := HB_aParams() diff --git a/harbour/include/hbclass.ch b/harbour/include/hbclass.ch index 3f8792c412..ed1de28da4 100644 --- a/harbour/include/hbclass.ch +++ b/harbour/include/hbclass.ch @@ -254,12 +254,12 @@ DECLARE HBClass ; /* #xtranslate __HB_CLS_SCOPE( , , ) => ; iif( , HB_OO_CLSTP_EXPORTED , ; iif( , HB_OO_CLSTP_PROTECTED, ; - iif( , HB_OO_CLSTP_HIDDEN, _nowarn_nScope ) ) ) */ + iif( , HB_OO_CLSTP_HIDDEN, nScope ) ) ) */ #xtranslate __HB_CLS_SCOPE( ) => ) __HB_CLS_ERR( Can not use multiple scope qualifiers! ) #xtranslate __HB_CLS_SCOPE( .T., .F., .F. ) => HB_OO_CLSTP_EXPORTED #xtranslate __HB_CLS_SCOPE( .F., .T., .F. ) => HB_OO_CLSTP_PROTECTED #xtranslate __HB_CLS_SCOPE( .F., .F., .T. ) => HB_OO_CLSTP_HIDDEN -#xtranslate __HB_CLS_SCOPE( .F., .F., .F. ) => _nowarn_nScope /* Default */ +#xtranslate __HB_CLS_SCOPE( .F., .F., .F. ) => nScope /* Default */ #xcommand CLASS [METACLASS ] ; @@ -269,10 +269,10 @@ DECLARE HBClass ; _HB_CLASS ;; function __HB_CLS_OPT([,] ) ( HB_CLS_PARAM_LIST ) ;; static s_oClass ;; - local _nowarn_nScope, oClass, oInstance ;; + local nScope, oClass, oInstance ;; if s_oClass == NIL .and. __clsLockDef( @s_oClass ) ;; begin sequence ;; - _nowarn_nScope := HB_OO_CLSTP_EXPORTED ;; + nScope := HB_OO_CLSTP_EXPORTED ; __HB_CLS_SYMBOL_UNUSED( nScope ) ;; oClass := IIF(<.metaClass.>, <(metaClass)>, HBClass():new( <(ClassName)> , __HB_CLS_PAR( [ @() ] [ , @() ] ), @__HB_CLS_OPT([__HB_CLS_ASID(),] )() [, <.modulfriend.> ] ) ) ;; #undef _CLASS_NAME_ ; #define _CLASS_NAME_ ;; #undef _CLASS_MODE_ ; #define _CLASS_MODE_ _CLASS_DECLARATION_ ; @@ -482,11 +482,11 @@ DECLARE HBClass ; #xtranslate _HB_MEMBER {AS Char => _HB_MEMBER {AS Character #xtranslate _HB_MEMBER {AS Block => _HB_MEMBER {AS CodeBlock - #xcommand EXPORTED: => _nowarn_nScope := HB_OO_CLSTP_EXPORTED - #xcommand EXPORT: => _nowarn_nScope := HB_OO_CLSTP_EXPORTED - #xcommand VISIBLE: => _nowarn_nScope := HB_OO_CLSTP_EXPORTED - #xcommand HIDDEN: => _nowarn_nScope := HB_OO_CLSTP_HIDDEN - #xcommand PROTECTED: => _nowarn_nScope := HB_OO_CLSTP_PROTECTED + #xcommand EXPORTED: => nScope := HB_OO_CLSTP_EXPORTED ; __HB_CLS_SYMBOL_UNUSED( nScope ) + #xcommand EXPORT: => nScope := HB_OO_CLSTP_EXPORTED ; __HB_CLS_SYMBOL_UNUSED( nScope ) + #xcommand VISIBLE: => nScope := HB_OO_CLSTP_EXPORTED ; __HB_CLS_SYMBOL_UNUSED( nScope ) + #xcommand HIDDEN: => nScope := HB_OO_CLSTP_HIDDEN ; __HB_CLS_SYMBOL_UNUSED( nScope ) + #xcommand PROTECTED: => nScope := HB_OO_CLSTP_PROTECTED; __HB_CLS_SYMBOL_UNUSED( nScope ) /* Classy compatibility... Added By JF Lefebvre (mafact) 2006/11/07 */ diff --git a/harbour/include/std.ch b/harbour/include/std.ch index eb5bb30a48..8a1319ee7c 100644 --- a/harbour/include/std.ch +++ b/harbour/include/std.ch @@ -536,9 +536,9 @@ #command REINDEX => ordListRebuild() -#command READ => ReadModal(GetList) ; GetList := {} +#command READ => ReadModal(GetList) ; GetList := {} ; ( GetList ) #command READ SAVE => ReadModal(GetList) -#command CLEAR GETS => ReadKill(.T.) ; GetList := {} +#command CLEAR GETS => ReadKill(.T.) ; GetList := {} ; ( GetList ) #xcommand @ [] COLOUR [] => @ [ ] COLOR [ ] @@ -558,7 +558,7 @@ #command READ [MENU ] ; [MSG AT , , [MSG COLOR ]] => ; ReadModal( GetList, NIL, , , , , ) ;; - GetList := {} + GetList := {} ; ( GetList ) #command READ SAVE [MENU ] ; [MSG AT , , [MSG COLOR ]] => ; diff --git a/harbour/source/compiler/hbopt.c b/harbour/source/compiler/hbopt.c index 2e11b77e85..0c234c8d4e 100644 --- a/harbour/source/compiler/hbopt.c +++ b/harbour/source/compiler/hbopt.c @@ -1292,11 +1292,10 @@ static void hb_compPCodeEnumAssignedUnused( HB_COMP_DECL, PFUNCTION pFunc, PHB_O /* These should be unused and does not have any POP pcode */ assert( pLocals[ isLocal - 1 ].bFlags != 0 ); - /* Skip detachables, referenced, optimizable self, and _nowarn_* */ + /* Skip detachables, referenced, optimizable self */ if( ( pLocals[ isLocal - 1 ].bFlags & ( OPT_LOCAL_FLAG_BLOCK | OPT_LOCAL_FLAG_PUSHREF ) ) == 0 && pLocals[ isLocal - 1 ].bFlags != OPT_LOCAL_FLAG_POPSELF && - pLocals[ isLocal - 1 ].bFlags != ( OPT_LOCAL_FLAG_PUSH | OPT_LOCAL_FLAG_POPSELF ) && - strncmp( pVar->szName, "_NOWARN_", 8 ) != 0 ) + pLocals[ isLocal - 1 ].bFlags != ( OPT_LOCAL_FLAG_PUSH | OPT_LOCAL_FLAG_POPSELF ) ) { memset( pMap, 0, pFunc->lPCodePos ); pMap[ ulPos ] = 1;