Erreur lors de l'ajout de std_logic_vectors

Je veux avoir un module simple qui ajoute deux std_logic_vectors. Cependant, lors de l'utilisation du code
ci-dessous avec l'opérateur+, il n'est pas synthétiser.

library IEEE; 
use IEEE.std_logic_1164.all;
use IEEE.std_logic_arith.all;

entity add_module is
        port(
  pr_in1   : in std_logic_vector(31 downto 0);
  pr_in2   : in std_logic_vector(31 downto 0);
  pr_out   : out std_logic_vector(31 downto 0)  
        );
end add_module;

architecture Behavior of add_module is

begin

    pr_out <= pr_in1 + pr_in2;

end architecture Behavior;

Le message d'erreur que je reçois de XST

La ligne 17. + ne peut pas avoir ces opérandes dans ce contexte.

Me manque une bibliothèque? Si possible, j'veux pas convertir les données de nombres naturels.

Merci beaucoup

source d'informationauteur Mike21