--  ret.adb
function ret return integer is
begin
   return -1
end ret;

--|./ret; echo $?
--|255

--|When value returned is 258 output is
--|./ret; echo $?
--|2
      

--  ret.ads
function ret return integer;
      

-- Callret.adb
with ret; 
with Ada.Text_IO; use Ada.Text_IO; 
procedure callret is 
begin
   put_line(ret'img);
end callret;
--|./callret
--|-1

--|When value returned is 258 output is
--|./callret
--|258