Erreur du compilateur C2049

'namespace-name' : espace de noms non inclus ne peut pas être rouvert comme inline

La inline mot clé peut être utilisée sur une extension de définition d’espace de noms uniquement si elle a également été utilisée sur la définition d’espace de noms d’origine.

Pour résoudre ce problème, utilisez le inline spécificateur cohérent entre toutes les parties de l’espace de noms.

L’exemple suivant génère l’erreur C2049 :

// C2049.cpp
namespace ns {}

inline namespace ns {}   // C2049

Résolution possible :

// C2049b.cpp
namespace ns {}

namespace ns {}