
I posted this question a few months ago, but I got pulled away to deal with more pressing work issues. So here it goes again: I'm trying to use lambda expressions to implement 'twice'. So I came up with typedef mpl::apply<_1, mpl::apply<_1, _2> > lambda_type; typedef lambda_type<boost::add_pointer<_1>, int> result_type; When I look at result_type, I get is_same<result_type, int*>::type::value evaluates to true. I expected that is_same<result_type, int**>::type::value would evaluate to true. Why is my lambda expression 'lambda_type' only returning it's second argument?? ------------------------------------------- Manson: My philosophy is: Don't think. I don't believe in the mind that you think with and scheme with. I don't believe in words. Reporter: If you don't believe in words, why do you use so many of them? Manson: Words are symbols. All I'm doing is jumbling the symbols in your brain. Everything is symbolic. Symbols are just connections in your brain. Even your body is a symbol. __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com