c++ - Bug: mistakes compile-time multiplication in template param list for VLA
Compiling STLSoft's static_array classes gives H:\STLSoft\Identities\STLSoft\stlsoft\stlsoft_static_array.h(730) : Error: variable length arrays are only for function prototypes and autos Essentially, the class template is declared like this template< typename T , size_t N0 , size_t N1 , size_t N2 , size_t N3 , typename P = do_construction<T> , typename M = T[N0 * N1 * N2 * N3] > class static_array_4d { . . . M m_data; // <= This is the line (730) that causes the problem }; I've tried boiling it down, but it eludes me. I've included a test file incorporates the same structure, but fails to elicit the error It'd be great if this can be found and fixed for 8.44, as I suspect STLSoft 1.8.4 will be releasable at the same time. Cheers Matthew begin 666 vla_bug.cpp M;W(H<VEZ95]T(&D /2 P.R!I(#P <VEZ96]F*&%R+FU?87)R87DN;5]D871A M"6%R+FU?87)R87DN;5]D871A6VE=(#T $"GT-" `` ` end
Apr 26 2005
"Matthew" <admin stlsoft.dot.dot.dot.dot.org> wrote in message news:d4n73h$6k9$1 digitaldaemon.com...I've tried boiling it down, but it eludes me. I've included a test file incorporates the same structure, but fails to elicit the errorI'm afraid that a test case that doesn't produce the error is not terribly useful.
May 17 2005
"Walter" <newshound digitalmars.com> wrote in message news:d6ejip$1e4j$1 digitaldaemon.com..."Matthew" <admin stlsoft.dot.dot.dot.dot.org> wrote in message news:d4n73h$6k9$1 digitaldaemon.com...:-)I've tried boiling it down, but it eludes me. I've included a test file incorporates the same structure, but fails to elicit the errorI'm afraid that a test case that doesn't produce the error is not terribly useful.
May 17 2005