#ifndef __GBLIBCPP_BITS_FORWARD__ #define __GBLIBCPP_BITS_FORWARD__ #include namespace std { template constexpr std::remove_reference_t&& move(T&& val) noexcept { return static_cast&&>(val); } template constexpr T&& forward(std::remove_reference_t& val) noexcept { return static_cast(val); } template constexpr T&& forward(std::remove_reference_t&& val) noexcept { return static_cast(val); } template add_rvalue_reference_t declval(void) noexcept { static_assert(__helpers::template_false_type::value, "declval cannot be evaluated."); } } // namespace std #endif