PACKAGE BODY my_stuff IS
      PROCEDURE add_bits3 (SIGNAL a, b, en : IN BIT;
                SIGNAL temp_result, temp_carry : OUT BIT) IS
       BEGIN     -- this function can return a carry
             temp_result <= (a XOR b) AND en;
             temp_carry <= a AND b AND en;
       END add_bits3;
END my_stuff;   |