Fix inlining of ArrayView<T> Bug: b/499946633, webrtc:439801349 Change-Id: I28d3e93e85006c6603ba31518337e31e008ab0cd Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/461840 Commit-Queue: Danil Chapovalov <danilchap@webrtc.org> Auto-Submit: Danil Chapovalov <danilchap@webrtc.org> Reviewed-by: Evan Shrubsole <eshr@webrtc.org> Commit-Queue: Evan Shrubsole <eshr@webrtc.org> Cr-Commit-Position: refs/heads/main@{#47328}
diff --git a/api/array_view.h b/api/array_view.h index f93591a..2f5dae9 100644 --- a/api/array_view.h +++ b/api/array_view.h
@@ -18,8 +18,10 @@ namespace webrtc { -template <typename T, size_t extent = std::dynamic_extent> -using ArrayView ABSL_DEPRECATE_AND_INLINE() = std::span<T, extent>; +// A parameter pack of extents is used to ensure that ArrayView<T> inlines to +// span<T>, but only 0 or 1 extent is supported. +template <typename T, size_t... extent> +using ArrayView ABSL_DEPRECATE_AND_INLINE() = std::span<T, extent...>; template <typename T> ABSL_DEPRECATE_AND_INLINE()