1 /*=============================================================================
2     Copyright (c) 2001-2007 Joel de Guzman
3     Copyright (c) 2014      John Fletcher
4     Copyright (c) 2018      Kohei Takahashi
5 
6     Distributed under the Boost Software License, Version 1.0. (See accompanying
7     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
8 ==============================================================================*/
9 #include <boost/detail/lightweight_test.hpp>
10 #include <boost/phoenix/core.hpp>
11 #include <boost/phoenix/operator/self.hpp>
12 #include <boost/phoenix/bind.hpp>
13 #include <boost/phoenix/scope/lambda.hpp>
14 #include <boost/phoenix/scope/let.hpp>
15 
main()16 int main()
17 {
18     using boost::phoenix::lambda;
19     using boost::phoenix::let;
20     using boost::phoenix::val;
21     using boost::phoenix::arg_names::_1;
22     using boost::phoenix::local_names::_a;
23 
24    int x = (let(_a = _1)[bind(_a)])(lambda[val(1)]());
25    BOOST_TEST(x == 1);
26 
27     return boost::report_errors();
28 }
29