------- Comment #4 from rguenth at gcc dot gnu dot org  2006-08-20 14:25 -------
Confirmed.  Reduced testcase:

namespace boost{
  namespace lambda {
    template <class T0, class T1> class tuple;
    template <int I> struct placeholder {};
    template <int I, class Act> class action;
    template <class Base> class lambda_functor;
    template <class Act, class Args> class lambda_functor_base;
    enum {  FIRST = 0x01, SECOND = 0x02};
    template <int I> class function_action {};
    template<class Act, class Args> class lambda_functor_base<action<2, Act>,
Args> {};
    typedef const lambda_functor<placeholder<SECOND> > placeholder2_type;
    template <class T> class lambda_functor : public T {};
    boost::lambda::placeholder2_type free2 =
boost::lambda::placeholder2_type();
    boost::lambda::placeholder2_type& _2 = free2;
    template <class Arg1, class Arg2> lambda_functor<   lambda_functor_base<   
 action<2, function_action<2> >, tuple<const Arg1, const Arg2>  > > bind(const
Arg1& a1, const Arg2& a2) {}
  }
}
using namespace boost::lambda;
struct MyPair {
  int second;
};
template<typename lambda_type> typeof(bind(&MyPair::second, lambda_type()))
get_score(lambda_type lambda){}
int main() {
  get_score(_2);
}


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2006-08-20 14:25:42
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28783

Reply via email to