diff --git a/tl_expected/include/tl_expected/expected.hpp b/tl_expected/include/tl_expected/expected.hpp index ae90975..b04d6c7 100644 --- a/tl_expected/include/tl_expected/expected.hpp +++ b/tl_expected/include/tl_expected/expected.hpp @@ -13,6 +13,18 @@ // . /// +// If the system header is available, redirect to it. +// Otherwise, fall back to the vendored version with a deprecation warning. +#if __has_include() +#include +#else +#warning "tl_expected/expected.hpp is deprecated. Please install libexpected-dev and use instead." +#warning "tl_expected/expected.hpp is deprecated. Use from libexpected-dev, or if the system header is not available." +// If the system header is available, redirect to it. +// Otherwise, fall back to the vendored version +#if __has_include() +#include +#else #ifndef TL_EXPECTED_HPP #define TL_EXPECTED_HPP @@ -2480,4 +2492,6 @@ void swap(expected &lhs, } } // namespace tl -#endif +#endif // TL_EXPECTED_HPP + +#endif // !defined(USE_VENDORED_TL_EXPECTED) && __has_include() diff --git a/tl_expected/package.xml b/tl_expected/package.xml index 07dac78..ef78d93 100644 --- a/tl_expected/package.xml +++ b/tl_expected/package.xml @@ -14,6 +14,8 @@ ament_cmake + libexpected-dev + ament_cmake