diff --git a/include/gsl/span b/include/gsl/span index 6c1b2cd..3daf16f 100644 --- a/include/gsl/span +++ b/include/gsl/span @@ -521,11 +521,15 @@ public: Expects(size() > 0); return data()[size() - 1]; } - - + + // at and operator() are deprecated to align to the public member functions of std::span + [[deprecated("Use operator[]")]] constexpr reference at(index_type idx) const noexcept{ return this->operator[](idx); } + [[deprecated("Use operator[]")]] constexpr reference operator()(index_type idx) const noexcept{ return this->operator[](idx); } + + constexpr pointer data() const noexcept { return storage_.data(); } // [span.iter], span iterator support diff --git a/tests/span_tests.cpp b/tests/span_tests.cpp index 5885328..28c97f5 100644 --- a/tests/span_tests.cpp +++ b/tests/span_tests.cpp @@ -17,8 +17,7 @@ #ifdef _MSC_VER // blanket turn off warnings from CppCoreCheck from catch // so people aren't annoyed by them when running the tool. -#pragma warning(disable : 26440 26426 26497 4189) // from catch - +#pragma warning(disable : 26440 26426 26497 4189 4996) #endif #if __clang__ || __GNUC__ @@ -26,6 +25,7 @@ #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wundef" #pragma GCC diagnostic ignored "-Wunused-variable" +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" #endif // __clang__ || __GNUC__ #if __clang__