That's it, thanks!

Brgds,
Viktor

On Sun, Jun 21, 2009 at 12:33 PM, Przemyslaw Czerpak<dru...@acn.waw.pl> wrote:
> On Sun, 21 Jun 2009, Szak�ts Viktor wrote:
>
> Hi,
>
>> Can this expression be optimized by compiler to NOP:
>>    Do( NIL )
>> I'm trying to make this work in every situation:
>> #if defined( __HB_OUTDEBUG__ ) .AND. defined( __PLATFORM__WINDOWS )
>>    #xtranslate HB_OUTDEBUG( [<x>] ) => WAPI_OUTPUTDEBUGSTRING( <x> )
>> #else
>>    #xtranslate HB_OUTDEBUG( [<x>] ) => ( Do( NIL ) )
>> #endif
>> Something would be needed which is converted to
>> a complete dummy expression to allow usage in
>> codeblocks, but which would be optimized out by
>> the compiler to NIL or nothing depending on the
>> situation.
>> Or maybe there are better ideas for this.
>
> #if defined( __HB_OUTDEBUG__ ) .AND. defined( __PLATFORM__WINDOWS )
>   #xtranslate HB_OUTDEBUG( [<x,...>] ) => WAPI_OUTPUTDEBUGSTRING( <x> )
> #else
>   #xtranslate HB_OUTDEBUG( [<x,...>] ) => IIF(.T.,,)
> #endif
>
> IIF(.T.,,) is optimized by compiler to nothing (fully stripped) in
> code like:
>
>   IIF(.T.,,)
>   ? IIF(.T.,,)
>
> and to NIL in code like:
>
>   {|| IIF(.T.,,) }
>   x := IIF(.T.,,)
>   ? IIF(.T.,,), "next"
>
> best regards,
> Przemek
> _______________________________________________
> Harbour mailing list
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour
>
_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to