• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (C) 2015 Andrzej Krzemienski.
2 //
3 // Use, modification, and distribution is subject to the Boost Software
4 // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
5 // http://www.boost.org/LICENSE_1_0.txt)
6 //
7 // See http://www.boost.org/lib/optional for documentation.
8 //
9 // You are welcome to contact the author at:
10 //  akrzemi1@gmail.com
11 
12 #include "boost/core/ignore_unused.hpp"
13 #include "boost/core/lightweight_test.hpp"
14 #include "boost/optional/detail/optional_config.hpp"
15 
16 #if (defined BOOST_NO_CXX11_RVALUE_REFERENCES) || (!defined BOOST_OPTIONAL_CONFIG_NO_LEGAL_CONVERT_FROM_REF)
17 
18 # error "failed as requested"
19 
20 #else
21 
22 struct S {};
23 
24 struct Binder
25 {
26   S& ref_;
BinderBinder27   template <typename R> Binder (R&&r) : ref_(r) {}
28 };
29 
main()30 int main()
31 {
32   S s ;
33   Binder b = s;
34   boost::ignore_unused(b);
35 }
36 
37 #endif
38