From: Joaquín Mª López Muñoz (joaquin_at_[hidden])
Date: 2005-05-26 01:19:36
Michael Glassford ha escrito:
> As far as I can see, these are all type_traits compile errors in the
> Boost.Thread regression tests. Did something change fairly recently in
> the type traits library or the way that Boost.Test uses it that might
> cause this? Unfortunately, I don't have access to VC6 to help me debug
> it, and don't know enough about changes in those or other libraries to
> debug the problem "in a vacuum".
The problem is due to an internal typedef in the is_convertible implementation
called "binder", which clashes with your "binder" in libs\thread\testutil.inl.
The "binder" in is_convertible was introduced about two months ago,
hence the regression.
I don't know the exact circumstances where this compiler bug shows, but I
know I've been bitten by it in the past. Simply renaming your binder to
anything else (like in the attached patch) solves the problem.
Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo
< class binder
--- > class binder_class 146c146 < binder(const F& func, const T& param) --- > binder_class(const F& func, const T& param) 156c156 < binder<F, T> bind(const F& func, const T& param) --- > binder_class<F, T> bind(const F& func, const T& param) 158c158 < return binder<F, T>(func, param); --- > return binder_class<F, T>(func, param);
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk