
Maxim Yanchenko wrote:
template< typename T, long C0 = LONG_MAX, long C1 = LONG_MAX, long C2 = LONG_MAX , long C3 = LONG_MAX, long C4 = LONG_MAX, long C5 = LONG_MAX , long C6 = LONG_MAX, long C7 = LONG_MAX, long C8 = LONG_MAX , long C9 = LONG_MAX, long C10 = LONG_MAX, long C11 = LONG_MAX , long C12 = LONG_MAX, long C13 = LONG_MAX, long C14 = LONG_MAX , long C15 = LONG_MAX, long C16 = LONG_MAX, long C17 = LONG_MAX , long C18 = LONG_MAX, long C19 = LONG_MAX > struct vector_c;
I'm using GCC 3.4.6, on Linux-64, compiling 32-bit binary (so int and long are of same size, and boost::int64_t is bigger than long).
long is the biggest integral type as far as standard C++ is concerned. The issue comes from the fact the "long long" extension is not supported by Boost.MPL. So, strictly speaking, it's more of a lacking feature than a bug.