From: Jens Maurer (Jens.Maurer_at_[hidden])
Date: 2001-06-28 16:33:32
Aleksey Gurtovoy wrote:
> David Abrahams wrote:
> > Still, when I introduced that macro I was unaware of the language rule
> > requiring an out-of-class declaration for integral constant members of
> > templates (unenforced by most compilers).
> But issue 48
> (http://anubis.dkuug.dk/jtc1/sc22/wg21/docs/cwg_defects.html#48) has been
> categorized as a Defect Report, and although the resolution is not a part of
> the standard yet, I think it's very unlikely that any compiler vendor will
> put efforts into enforcing the rule that is almost certainly is going to be
Note that issue 48 deals only with places "where an integral
constant expression is required". Thus, sizing a C-style array
doesn't need the out-of-line definition, but using it in an
"ordinary" expression such as "if(i)" does require the definition.
For boost, that means we still need to provide the out-of-line
definitions. I think.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk