#include <boost/config.hpp>
#include <boost/detail/workaround.hpp>
#include <boost/detail/lightweight_test.hpp>
#include <boost/phoenix/core.hpp>
#include <boost/phoenix/operator/self.hpp>
#include <boost/phoenix/bind.hpp>
#include <boost/phoenix/scope/lambda.hpp>
#include <boost/phoenix/scope/let.hpp>
int main()
{
using boost::phoenix::lambda;
using boost::phoenix::let;
using boost::phoenix::val;
using boost::phoenix::local_names::_a;
int x = (let(_a = lambda[val(1)])[bind(_a)])();
BOOST_TEST(x == 1);
return boost::report_errors();
}