<div dir="ltr">In testul asta:<div><br></div><div><div>class Main inherits IO</div><div>    print Int x :</div><div>        local String s; end;</div><div>        s = if x < 0 then</div><div>                "Minus " +  -x;</div><div>            else</div><div>                x;</div><div>            end</div><div>        ;</div><div>        [out s];              </div><div>    end;</div><div>    </div><div>    main :</div><div>        [print -4];</div><div>        [print 25];</div><div>    end;</div><div>end;</div></div><div><br></div><div>TestRig-ul zice ca trebuie sa arunce IncompatibleOperandsException. Eu vad aici doar 3 cazuri posibile:</div><div>1. s = ... . Ramura then e un string, iar cea else e un int (care se converteste implicit la string conform manualului)</div><div>2. "Minus" + -x. String + int, se converteste implicit la string.</div><div>3. x < 0. Int < Int</div><div><br></div><div>Unde e eroarea mai exact?<br></div></div>