Chris@16: /////////////////////////////////////////////////////////////////////////////// Chris@16: /// \file as_lvalue.hpp Chris@16: /// Contains definition the as_lvalue() functions. Chris@16: // Chris@16: // Copyright 2008 Eric Niebler. Distributed under the Boost Chris@16: // Software License, Version 1.0. (See accompanying file Chris@16: // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) Chris@16: Chris@16: #ifndef BOOST_PROTO_TRANSFORM_AS_LVALUE_HPP_EAN_12_27_2007 Chris@16: #define BOOST_PROTO_TRANSFORM_AS_LVALUE_HPP_EAN_12_27_2007 Chris@16: Chris@16: #include Chris@16: Chris@101: #if defined(_MSC_VER) Chris@16: # pragma warning(push) Chris@16: # pragma warning(disable : 4714) // function 'xxx' marked as __forceinline not inlined Chris@16: #endif Chris@16: Chris@16: namespace boost { namespace proto Chris@16: { Chris@16: namespace detail Chris@16: { Chris@16: template Chris@16: BOOST_FORCEINLINE Chris@16: T &as_lvalue(T &t) Chris@16: { Chris@16: return t; Chris@16: } Chris@16: Chris@16: template Chris@16: BOOST_FORCEINLINE Chris@16: T const &as_lvalue(T const &t) Chris@16: { Chris@16: return t; Chris@16: } Chris@16: } Chris@16: }} Chris@16: Chris@101: #if defined(_MSC_VER) Chris@16: # pragma warning(pop) Chris@16: #endif Chris@16: Chris@16: #endif