1234567891011121314151617181920212223242526272829303132 |
- // Copyright (C) 2009-2012 Lorenzo Caminiti
- // Distributed under the Boost Software License, Version 1.0
- // (see accompanying file LICENSE_1_0.txt or a copy at
- // http://www.boost.org/LICENSE_1_0.txt)
- // Home at http://www.boost.org/libs/local_function
- #ifndef BOOST_LOCAL_FUNCTION_AUX_NOBIND_HPP_
- #define BOOST_LOCAL_FUNCTION_AUX_NOBIND_HPP_
- #include <boost/local_function/config.hpp>
- // NOTE: The current implementation needs no-bind placeholders only when
- // local types cannot be passed as template parameters.
- #if !BOOST_LOCAL_FUNCTION_CONFIG_LOCALS_AS_TPARAMS
- namespace boost { namespace local_function { namespace aux {
- typedef int nobind_t; // Tag no-bind type.
- static nobind_t nobind; // Global variable so all no-binds can reference it.
- // NOTE: Used only to get rid of unused static variable `nobind` (this function
- // is never actually called so it does not need to be defined).
- void no_unused_nobind_warning_(nobind_t* ptr = &nobind);
- } } } // namespace
- #endif // locals as tparams
- #endif // #include guard
|