Greg Comeau wrote:
> In article < .com>,
> Greg <> wrote:
> >a fairly good barometer of compiler compliance would probably
> >be the Boost Release summary....
>
> The Boost folks themselves disagree with such a statement,
> so we should too.
Granted, the purpose of the Release pages is not to test compiler
compliance, nor do the Boost libraries provide any type of systematic
test coverage. Furthermore the compiler is not the only tool used in a
build, so a failure may be a problem with the linker, for example. As I
tried to communicate in my original post, the information here is quite
raw. To find data that would help answer the poster's question would
require carefully sifting through all of these results and would
necessarily entail discarding a lot of irrelevant information.
Nevertheless, it would be difficult to assemble another set of C++
source files on one's own that would make use of so many advanced
language features as the do the Boost libraries. So it must be possible
to learn something about a compiler by having it build this set of
libraries. How useful that information may be is another matter.
Certainly, it's unlikely that one's own code would look much like a
Boost library, so it is valid to argue that any information gleaned
from the Boost build results is of academic interest. In strictly
practical terms, I doubt it makes much difference to the average C++
programmer whether:
boost:

:cpplexer::lex_input_interface<boost:: wave::cpplexer::lex_token<T2>>
*boost:

:cpplexer::new_lexer_gen<T1, T2>::new_lexer(
const T1 &,
const T1 &,
const T2 &,
boost:

:language_support)
[with T1=char *,
T2=boost:

:util::file_position<boost:

:u til::
flex_string<char, std::char_traits<char>,
std::allocator<char>,
boost:

:util::CowString<boost:

:util::
AllocatorStringStorage<char,std::allocator<char>>, char
*>>>
is multiply-defined or not.
But with the maturity of today's C++ compilers, the issue of language
compliance really has been pushed to the more esoteric language
constructs. The days when compiling "hello, world" in order to
reasonably assess a C++ compiler have passed. Granted there are easier
ways to answer the question than sifting through reams of build logs,
but if those methods are not readily available, then answering the
question can still be done I believe, but it would require a lot of
work.
Greg