In 10.5 eqBox(Str, Str)
and other cases produces incorrect results. eqBox()
now uses the eqBoxedValue()
function which always has produced correct results for all boxed values including strings.
use cm.runtime; { str a = "dd"; str b = "dd"; str c = "d" # "d"; str d = b.copy; pln(#a.eqBox(b)); pln(#a.eqBox(c)); pln(#a.eqBox(d)); pln(#a.eqBoxedValue(b)); pln(#a.eqBoxedValue(c)); pln(#a.eqBoxedValue(d)); } 10.5: a.eqBox(b)=true a.eqBox(c)=false a.eqBox(d)=false a.eqBoxedValue(b)=true a.eqBoxedValue(c)=true a.eqBoxedValue(d)=true 11.0: a.eqBox(b)=true a.eqBox(c)=true a.eqBox(d)=true a.eqBoxedValue(b)=true a.eqBoxedValue(c)=true a.eqBoxedValue(d)=true