Ron
>
> Instead of HB_UPPER call, compiler translated string 'abc_абвгд' into
> upper case (for optimization ?).
>
> What is compiler flags to supress this optimization ?
inside hbexpra.c we have
hb_compExpr_IDs.UPPER = hb_compIdentifierNew( "UPPER", TRUE );
<--- can this line doing this
Also in line 1758 in hbexprb.c we has this comment
/*
TODO: Clipper optimizes Upper() but what about codepage
support?
*/
else if( HB_EXPR_ISBUILTIN_ID( szName, UPPER ) && usCount
== 1 )
{
pReduced = pParms->value.asList.pExprList;
if( pReduced->ExprType == HB_ET_STRING )
{
ULONG i;
char *sCopy = (char *) hb_xgrab( pReduced->ulLength
+ 1 );
memcpy( sCopy, pReduced->value.asString.string,
pReduced->ulLength + 1 );
pReduced = hb_compExprNewString( sCopy,
pReduced->ulLength, TRUE );
for ( i = 0; i < pReduced->ulLength; i++ )
{
sCopy[i] = toupper( sCopy[i] );
}
HB_EXPR_PCODE1( hb_compExprDelete, pSelf );
pSelf = pReduced;
}
}
Regards
Luiz
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
xHarbour-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xharbour-developers