raw: Allow prvalue references to have data referenced

It is perfectly acceptable for common containers like string_views and
spans to be passed by prvalue from a calling function and have data
referenced.

Change-Id: Ie20e2ccd685e7d1911faeb42f21c0037aaf0754a
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/src/stdplus/raw.hpp b/src/stdplus/raw.hpp
index f6938e2..885028c 100644
--- a/src/stdplus/raw.hpp
+++ b/src/stdplus/raw.hpp
@@ -76,7 +76,7 @@
  */
 template <typename T, typename Container,
           typename Tp = detail::copyConst<T, detail::dataType<Container>>>
-Tp& refFrom(Container& c)
+Tp& refFrom(Container&& c)
 {
     static_assert(std::is_trivially_copyable_v<Tp>);
     static_assert(detail::trivialContainer<Container>);
@@ -181,7 +181,7 @@
           typename = std::enable_if_t<!std::is_trivially_copyable_v<Container>>,
           typename = decltype(std::data(std::declval<Container>())),
           typename IntTp = detail::copyConst<IntT, detail::dataType<Container>>>
-span<IntTp> asSpan(Container& c) noexcept
+span<IntTp> asSpan(Container&& c) noexcept
 {
     static_assert(detail::trivialContainer<Container>);
     static_assert(sizeof(*std::data(c)) % sizeof(IntTp) == 0);