| 
									
										
										
										
											2009-03-04 14:28:36 +00:00
										 |  |  | //  Copyright (C) 2007 Douglas Gregor | 
					
						
							|  |  |  | //  Use, modification and distribution are subject to the | 
					
						
							|  |  |  | //  Boost Software License, Version 1.0. (See accompanying file | 
					
						
							|  |  |  | //  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | //  See http://www.boost.org/libs/config for most recent version. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-07-15 15:59:05 +00:00
										 |  |  | //  MACRO:         BOOST_NO_CXX11_RVALUE_REFERENCES | 
					
						
							| 
									
										
										
										
											2009-03-04 14:28:36 +00:00
										 |  |  | //  TITLE:         C++0x rvalue references unavailable | 
					
						
							|  |  |  | //  DESCRIPTION:   The compiler does not support C++0x rvalue references | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-07-15 15:59:05 +00:00
										 |  |  | namespace boost_no_cxx11_rvalue_references { | 
					
						
							| 
									
										
										
										
											2009-03-04 14:28:36 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | void g(int&) {} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | template<typename F, typename T> | 
					
						
							|  |  |  | void forward(F f, T&& t) { f(static_cast<T&&>(t)); } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | int test() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |    int x; | 
					
						
							|  |  |  |    forward(g, x); | 
					
						
							|  |  |  |    return 0; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | } |