Hi Amul ! I think, the problem is much deeper ! We found another construction that gives an ambiguous result. s %gD=$$ZZCVToul("I"_%ident_$tr($j($g(%srvident),4)," ",0)_" ")_$$zcmd1(%gZD) If we do this in two steps, the result will be correct. s %gD=$$ZZCVToul("I"_%ident_$tr($j($g(%srvident),4)," ",0)_" ") s %gD=%gD_$$zcmd1(%gZD) This is a string from a real program, but I will try to prepare a simpler example (if I can). I think the variable $gtm_side_effects should not affect the handling of concatenation....
Hi Amul! Thanks for your answer ! However, there are no complaints to the Write. Why when calculating the Set command argument in the first part of the expression, the elements are calculated sequentially, and in the second, the increment is calculated before the value of the variable a is taken ? Have a nice day !
Result, of course :-)
Sorry, ddd 2 rrr 2 ttt 3 and ddd 2 rrr 3 ttt 3 Of course !
Different resultat in the same expression
Hi Amul ! Thanks for your responce !
Fatal ERROR in indirection
Hi, Amul ! Thanks for patch, we now use it. However, we found another error related to optimization. An error exists since version 6.3-001. We have code transferred from the cache and adapted for GT.M. A simple example: xexistJob(%this,job) new exist set exist=$select($zv["GT.M":$zgetjpi(job,"isprocalive"),1:##class(%Obj(z,"Util")).DataProc(job)) quit exist From the point of view of GT.M there is a syntax error, which is found at compilation: GTM>w $zv GT.M V6.3-000A Linux x86_64 GTM>zlink "newerr.m"...