From adba72912bcba6416ba08a81742ac82271d47a0a Mon Sep 17 00:00:00 2001 From: Ryszard Glab Date: Tue, 14 Feb 2006 13:29:35 +0000 Subject: [PATCH] 2006-02-14 14:40 UTC+0100 Ryszard Glab * include/hbexprc.c * source/compiler/exproptc.c * source/macro/macroc.c * disabled optimalization of compound assignment in macro compiler --- harbour/ChangeLog | 6 ++++++ harbour/include/hbexprc.c | 5 ++++- harbour/source/compiler/exproptc.c | 2 +- harbour/source/macro/macroc.c | 2 +- 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 6f65bfc77b..0bdbe00e44 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,12 @@ 2002-12-01 13:30 UTC+0100 Foo Bar */ * fixed <-x-> match marker +2006-02-14 14:40 UTC+0100 Ryszard Glab + * include/hbexprc.c + * source/compiler/exproptc.c + * source/macro/macroc.c + * disabled optimalization of compound assignment in macro compiler + 2006-02-14 13:40 UTC+0100 Ryszard Glab * include/hbexprc.c * source/compiler/exproptc.c diff --git a/harbour/include/hbexprc.c b/harbour/include/hbexprc.c index c5f403f80d..f351e21930 100644 --- a/harbour/include/hbexprc.c +++ b/harbour/include/hbexprc.c @@ -149,6 +149,7 @@ void hb_compExprPushOperEq( HB_EXPR_PTR pSelf, BYTE bOpEq ) } /* TODO: add a special code for arrays to correctly handle a[ i++ ]++ */ +#if ! defined( HB_MACRO_SUPPORT ) else if( ( bOpEq == HB_P_PLUS || bOpEq == HB_P_MINUS || bOpEq == HB_P_MULT || bOpEq == HB_P_DIVIDE ) && ( pSelf->value.asOperator.pLeft->ExprType == HB_ET_VARIABLE ) ) @@ -215,6 +216,7 @@ void hb_compExprPushOperEq( HB_EXPR_PTR pSelf, BYTE bOpEq ) } } } +#endif /* push old value */ HB_EXPR_USE( pSelf->value.asOperator.pLeft, HB_EA_PUSH_PCODE ); /* push increment value */ @@ -268,6 +270,7 @@ void hb_compExprUseOperEq( HB_EXPR_PTR pSelf, BYTE bOpEq ) } /* TODO: add a special code for arrays to correctly handle a[ i++ ]++ */ +#if ! defined( HB_MACRO_SUPPORT ) else if( ( bOpEq == HB_P_PLUS || bOpEq == HB_P_MINUS || bOpEq == HB_P_MULT || bOpEq == HB_P_DIVIDE ) && ( pSelf->value.asOperator.pLeft->ExprType == HB_ET_VARIABLE ) ) @@ -334,7 +337,7 @@ void hb_compExprUseOperEq( HB_EXPR_PTR pSelf, BYTE bOpEq ) } } } - +#endif /* push old value */ HB_EXPR_USE( pSelf->value.asOperator.pLeft, HB_EA_PUSH_PCODE ); /* push increment value */ diff --git a/harbour/source/compiler/exproptc.c b/harbour/source/compiler/exproptc.c index dbd601c48a..c66be5521c 100644 --- a/harbour/source/compiler/exproptc.c +++ b/harbour/source/compiler/exproptc.c @@ -5,6 +5,6 @@ /* hbexprc.c is also included from ../macro/macro.c * However it produces a slighty different code if used in * macro compiler (there is an additional parameter passed to some functions) - * 1.7 - ignore this magic number - this is used to force compilation + * 1.8 - ignore this magic number - this is used to force compilation */ #include "hbexprc.c" diff --git a/harbour/source/macro/macroc.c b/harbour/source/macro/macroc.c index 35be06a2da..5edc386110 100644 --- a/harbour/source/macro/macroc.c +++ b/harbour/source/macro/macroc.c @@ -5,7 +5,7 @@ /* hbexprc.c is also included from ../compiler/exproptc.c * However it produces a slighty different code if used in * macro compiler (there is an additional parameter passed to some functions) - * 1.6 - ignore this magic number - this is used to force compilation + * 1.7 - ignore this magic number - this is used to force compilation */ #define HB_MACRO_SUPPORT