https://github.com/abseil/abseil-cpp/blob/2a62fbdedf64673f7c858bc6487bd15bcd2ca180/absl/base/config.h#L363 Yes, even C++03. :-) You can test this thus: #ifdef __has_include # if __has_include(<string_view>) # include <string_view> # if __cplusplus >= 201703L || defined(_LIBCPP_STRING_VIEW) # define ABSL_HAVE_STD_STRING_VIEW 1 # endif # endif #endif