>Is the following a bug in STRTRAN()? It happens in VFP 7 & 9.
>
>? ISNULL(STRTRAN('XXX', 'YYY', NULL)) && prints .T.
>
>'YYY' doesn't appear in 'XXX', so why is it substituting NULL in the first place? If the expression sought doesn't exist in the expression to be searched, I would expect to have the expression to be searched returned as is, regardless of the replacement expression.
it is not a bug.
When a parameter is null and the function is deterministic,
a parameter that can null the result, makes the result always null.
for this ? expect NULL or B ?
? STRTRAN(NULL,NULL,"B")
next is a bug
? DTOC(DATE(),1)
? DTOC(DATE(),NULL)
bug origin ?
because the code checks if there is one parameter, not the value of the parameter,
Eventualer any future modification of the parameter will be a problem.
? DTOC(DATE(),"")