2006-06-02 14:00 UTC+0100 Ryszard Glab <rglab//imid.med.pl>
* include/hbexpra.c
* source/compiler/expropta.c
* fixed bug in GET var[ any_one_dim_index ]
* source/pp/ppcore.c
* fixed BCC warning
NOTICE: The above files are retagged to 'build46'
This commit is contained in:
@@ -8,6 +8,16 @@
|
||||
2002-12-01 13:30 UTC+0100 Foo Bar <foo.bar@foobar.org>
|
||||
*/
|
||||
|
||||
|
||||
+ harbour/source/rdd/usrrdd/example/exrlx.prg
|
||||
* example of using RLCDX RDD
|
||||
|
||||
+ harbour/source/rdd/usrrdd/example/exmemo.prg
|
||||
* example of using DBTCDX, FPTCDX and SMTCDX RDDs
|
||||
|
||||
2006-06-02 14:15 UTC+0100 Ryszard Glab <rglab//imid.med.pl>
|
||||
* harbour.spec
|
||||
|
||||
* updated to set version 0.46.1 for build46
|
||||
|
||||
2006-06-02 14:00 UTC+0100 Ryszard Glab <rglab//imid.med.pl>
|
||||
|
||||
@@ -494,6 +494,11 @@ HB_EXPR_PTR hb_compExprNewFunCall( HB_EXPR_PTR pName, HB_EXPR_PTR pParms )
|
||||
USHORT uiCount;
|
||||
if( pArg->ExprType == HB_ET_ARRAYAT )
|
||||
{
|
||||
/* replace:
|
||||
_GET_( a[1], "a[1]", , , )
|
||||
into:
|
||||
__GETA( {||a }, "a", , , , { 1 } )
|
||||
*/
|
||||
HB_EXPR_PTR pIndex, pVar;
|
||||
HB_EXPR_PTR pBase;
|
||||
|
||||
@@ -583,8 +588,14 @@ HB_EXPR_PTR hb_compExprNewFunCall( HB_EXPR_PTR pName, HB_EXPR_PTR pParms )
|
||||
}
|
||||
}
|
||||
}
|
||||
pBase->value.asList.pExprList = NULL;
|
||||
hb_compExprClear( pBase );
|
||||
/* clear expressions no longer used */
|
||||
while( pBase->ExprType == HB_ET_ARRAYAT )
|
||||
{
|
||||
pVar = pBase->value.asList.pExprList;
|
||||
pBase->value.asList.pExprList = NULL;
|
||||
hb_compExprClear( pBase );
|
||||
pBase = pVar;
|
||||
}
|
||||
}
|
||||
else if( pArg->ExprType == HB_ET_MACRO )
|
||||
{
|
||||
|
||||
@@ -5,6 +5,6 @@
|
||||
/* hbexpra.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.20 - ignore this magic number - this is used to force compilation
|
||||
* 1.21 - ignore this magic number - this is used to force compilation
|
||||
*/
|
||||
#include "hbexpra.c"
|
||||
|
||||
@@ -3412,7 +3412,7 @@ static int pp_Stringify( BOOL bSmart, char **ptro, int *lenres, char *expr, int
|
||||
|
||||
static int ReplacePattern( char patttype, char *expreal, int lenreal, char *ptro, int lenres )
|
||||
{
|
||||
int rmlen = lenreal, ifou, lenitem, i = 0;
|
||||
int rmlen = lenreal, ifou, lenitem;
|
||||
char sQuotes[4] = "\"\",";
|
||||
|
||||
HB_TRACE( HB_TR_DEBUG, ( "ReplacePattern(%c, %s, %d, %s, %p)", patttype, expreal, lenreal, ptro, lenres ) );
|
||||
@@ -3495,6 +3495,8 @@ static int ReplacePattern( char patttype, char *expreal, int lenreal, char *ptro
|
||||
lenitem = ( ifou ) ? ifou - 1 : lenreal;
|
||||
if( *expreal != '\0' )
|
||||
{
|
||||
int i;
|
||||
|
||||
i = ( ifou ) ? 5 : 4;
|
||||
hb_pp_Stuff( "{||},", ptro, i, 0, lenres );
|
||||
hb_pp_Stuff( expreal, ptro + 3, lenitem, 0, lenres + i );
|
||||
|
||||
Reference in New Issue
Block a user