Avertissement du compilateur C ++ - retour de la variable locale

Je suis simplement en train d'essayer de surcharger un opérateur + et je reçois ce message d'avertissement du compilateur

reference to local variable 'tmp' returned

Voici le code pour la surcharge

const Int& Int::operator+(const Int& p) const
{
    Int tmp = value + p.value;
    return tmp;
}

Ici est la classe

class Int{
    int value;
public:
    Int() {}    //default constructor
    Int(int v) : value(v) {}
    Int& operator=(const Int&);
    const Int& operator+(const Int&) const;
};

source d'informationauteur trikker