The TRANWRD function can return a truncated result when the replacement string is longer than the search string. In affected releases, part of the expected output might be missing from the end of the returned value, even when the target variable is defined with sufficient length.
data _null_;
length list result $100;
list = 'item1§item2§item3§item4§item5§item6§item7§item8';
result = tranwrd(list,'§',' , ');
put result=;
run;
The following values should be returned when you run the above code: item1 , item2 , item3 , item4 , item5 , item6 , item7 , item8
However, the code returns the following instead: item1 , item2 , item3 , item4 , item5 , item6 , item7
This issue occurs because the value that TRANWRD returns is incorrectly truncated.
This issue occurs in Stable 2026.01 through Stable 2026.08 and LTS 2026.03.
This issue is fixed in Stable 2026.09 and LTS 2026.09.