Boost logo

Boost Users :

From: John Maddock (john_maddock_at_[hidden])
Date: 2002-07-10 05:28:32


> > cc-3161 CC: ERROR File
> > = /ULTRA/depot/sdk/boost/boost_1_28_0/boost/thread/condition.hpp,
> > Line = 94
> > A class-qualified name is required.
> >
> > typedef typename detail::thread::lock_ops<M> lock_ops;
> > ^
> > A template was detected during header processing.
> > instantiation of "void boost::condition::do_wait
> > (boost::mutex &)"
> > at line 49
> > instantiation of "void
> > boost::condition::wait
> > (boost::mutex::scoped_lock &)" at
> > line 40 of "../src/thread.cpp"

You only need to use typename with dependent qualified names, and the
qualifier
in this case (boost::thread) is not dependent, so the typename isn't
required. In fact since the qualifier isn't even a type, I'm not actually
sure that it is even legal, whatever changing to:

typedef detail::thread::lock_ops<M> lock_ops;

should do the trick.

John Maddock
http://ourworld.compuserve.com/homepages/john_maddock/index.htm


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net