From 6014551d2c9f3cc8cf9ee674288347b71c197984 Mon Sep 17 00:00:00 2001 From: Przemyslaw Czerpak Date: Mon, 18 Dec 2006 23:35:29 +0000 Subject: [PATCH] 2006-12-19 00:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbexprc.c * added support _" prefix when macro message is used in assignment context also when -kc is used. We can block this feature for -kc but as long as is not blocked it should work in the same way for -kc and -kh --- harbour/ChangeLog | 6 ++++ harbour/include/hbexprc.c | 58 ++------------------------------------- 2 files changed, 8 insertions(+), 56 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 1545a363fc..9ae135eb2f 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,12 @@ 2002-12-01 13:30 UTC+0100 Foo Bar */ +2006-12-19 00:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/include/hbexprc.c + * added support _" prefix when macro message is used in assignment context + also when -kc is used. We can block this feature for -kc but as long + as is not blocked it should work in the same way for -kc and -kh + 2006-12-18 19:30 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/config/w32/bcc32.cf * cleanup diff --git a/harbour/include/hbexprc.c b/harbour/include/hbexprc.c index 4e309181a2..3fe3a4381c 100644 --- a/harbour/include/hbexprc.c +++ b/harbour/include/hbexprc.c @@ -145,61 +145,6 @@ void hb_compExprPushSendPush( HB_EXPR_PTR pSelf, HB_COMP_DECL ) } } -static void hb_compExprSendPopPush( HB_EXPR_PTR pObj, HB_COMP_DECL ) -{ - if( pObj->value.asMessage.pObject ) - { - /* Push _message for later use */ - if( pObj->value.asMessage.szMessage ) - { - HB_EXPR_PCODE2( hb_compGenMessageData, pObj->value.asMessage.szMessage, TRUE ); - } - else - { - HB_EXPR_USE( pObj->value.asMessage.pMessage, HB_EA_PUSH_PCODE ); - } - /* Push object */ - HB_EXPR_USE( pObj->value.asMessage.pObject, HB_EA_PUSH_PCODE ); - /* Now push current value of variable */ - if( pObj->value.asMessage.szMessage ) - { - HB_EXPR_PCODE2( hb_compGenMessage, pObj->value.asMessage.szMessage, TRUE ); - } - else - { - HB_EXPR_USE( pObj->value.asMessage.pMessage, HB_EA_PUSH_PCODE ); - } - /* Push object */ - HB_EXPR_USE( pObj->value.asMessage.pObject, HB_EA_PUSH_PCODE ); - } - else - { - if( pObj->value.asMessage.szMessage ) - { - /* Push _message and object for later use */ - HB_EXPR_PCODE2( hb_compGenMessageData, pObj->value.asMessage.szMessage, FALSE ); - } - else - { - /* Push message for later use */ - HB_EXPR_USE( pObj->value.asMessage.pMessage, HB_EA_PUSH_PCODE ); - /* Push object using WITHOBJECTMESSAGE pcode */ - HB_EXPR_PCODE2( hb_compGenMessage, NULL, FALSE ); - } - /* Now push current value of variable */ - if( pObj->value.asMessage.szMessage ) - { - HB_EXPR_PCODE2( hb_compGenMessage, pObj->value.asMessage.szMessage, FALSE ); - } - else - { - HB_EXPR_USE( pObj->value.asMessage.pMessage, HB_EA_PUSH_PCODE ); - /* Push WITHOBJECTMESSAGE pcode */ - HB_EXPR_PCODE2( hb_compGenMessage, NULL, FALSE ); - } - } -} - static void hb_compExprPushSendPopPush( HB_EXPR_PTR pObj, HB_EXPR_PTR pValue, BOOL fPreOp, BYTE bOper, HB_COMP_DECL ) { @@ -234,7 +179,8 @@ static void hb_compExprPushSendPopPush( HB_EXPR_PTR pObj, HB_EXPR_PTR pValue, /* push current value - it will be a result of whole expression */ HB_EXPR_USE( pObj, HB_EA_PUSH_PCODE ); } - hb_compExprSendPopPush( pObj, HB_COMP_PARAM ); + hb_compExprPushSendPop( pObj, HB_COMP_PARAM ); + hb_compExprPushSendPush( pObj, HB_COMP_PARAM ); HB_EXPR_PCODE2( hb_compGenPCode2, HB_P_SENDSHORT, 0 ); } /* push increment value */