><snip>
>
>>Hi Ed, Of course, for C or Assembler, these type of error always occur.
>>But as these part of code cannot be handled by programmer. The 4GL progr try all
>>possible case to trace what these error may occur?! much seriously!
>>
>>Besides, I wonder no need other function call! That is, it will cause error
>>even:
>>
>>= NVL(.NULL., _screen)
>>
>
>I ran this code, as well as:
>
> FOR i = 1 to 100
> =NVL(.NULL.,_SCREEN)
> ENDFOR
>
>
>with no problems under VFP 5.0a, with no porblem to report.
>
>>
>>Maybe it is a weapon for fired progr to make a deadTime of program.
>>If Date() >= {2000/1/1}
>> = NVL(.NULL., _screen)
>>Endif
>>
>>and hide it in any superclass Init procedure!
>
>Why?
It is surely if the Nvl() return value is putting to other user-defined function will cause error.
Strange?!
In Executable program, if you call:
=NVL(.null.,_screen)
messagebox(_screen.name + chr(9) + _screen.class)
I think the problem is the NVL() remap another object to system variable _screen, so there will be problem if any statement calling for _screen!
Such as _screen.paint()
Thus, it may error very fast or not depend on when the _screen object is called!
The weak wait for chance, The strong bid for chance,
The clever notch up chance, but The merciful give you chance.