|
Boost Users : |
From: Dave Jenkins (david_at_[hidden])
Date: 2007-10-22 00:51:53
Hi,
I'm testing with BOOST_TYPEOF_LIMIT_SIZE greater than 50 and native typeof
disabled. I get a "class template has already been defined" error on
"template<class V, class T> struct push_back" whenever
BOOST_TYPEOF_LIMIT_SIZE is *not* a multiple of 50.
This is because push_back is defined in both "typeof/vector.hpp" and, for
example, "typeof/vector50.hpp". My fix is to change the push_back
definition in "typeof/vector.hpp" to:
# if BOOST_TYPEOF_LIMIT_SIZE < 50
template<class V, class T> struct push_back {
typedef V type;
};
# endif
Can someone please confirm that this is the correct fix? A tiny program
demonstrating the problem is listed below.
Thanks,
Dave Jenkins
#define BOOST_TYPEOF_COMPLIANT
#define BOOST_TYPEOF_LIMIT_SIZE 51
#include <boost/typeof/typeof.hpp>
int main(){
return 0;
}
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