Boost logo

Boost :

From: Baptiste Lepilleur (blepctc_at_[hidden])
Date: 2004-02-01 07:53:01


I was able to run the regression test on Sun CC 5.5 patch 4 and AIX Visual
Age 6.

A zip containing the regression log can be downloaded from (120Ko):
http://tinyurl.com/25oqb

As I was not able to compile the regression tools on AIX, the html report
does not includes the AIX failure log. The boost 1.31rc2 test log for AIX
can be download from (120Ko):
http://tinyurl.com/2y6bg

Those reports are also available online at (warning: the link html report is
about 1Mo):
http://gaiacrtn.free.fr/temp/boost/

On both platforms, the result are 'not so good' in comparison to 1.30.2.
Many failures can be tracked down to some compilation issues of a few 'core'
components.

* Sun CC 5.5 p4:

- The compiler can not digest the templated operator == of iterator_facade.
As the new iterator has been used all over boost, this cause many libraries
to fail (filesystem, tokenizer, datetime, signals).

I was able to compile the regression tools by adding operator == & != to
directory_iterator class of boost.filesystem (which forward to the equal
method). I'm not sure it is correct but that allowed compilation at least. I
believe a more generic resolution of the iterator_facade issue should be
found.

- Many of boost.graph failures seems to be related to
(depth_first_search.hpp):

  template <class IncidenceGraph, class DFSVisitor, class ColorMap,
            class TerminatorFunc>
  void depth_first_visit
    (const IncidenceGraph& g,
     typename graph_traits<IncidenceGraph>::vertex_descriptor u,
     DFSVisitor vis, ColorMap color, TerminatorFunc func = TerminatorFunc())

AFAIK 'func' should not have a default value (how would the compiler deduce
the type???)...

- boost.thread is now systematically failing with 'thread resource error'
(the machine is a multiprocessor server with about 8Go of RAM, so it's a bit
strange...). It worked fine in 1.30.2...

- boost.regex has an interactive test (regex_timer). This is a real bother
as regression test take a long time to run, and because of that they stop mi
dway.

- boost.variant failures are related to (visitation_impl.hpp):
template <
      typename Which, typename step0
    , typename Visitor, typename VoidPtrCV
    , typename NoBackupFlag
>
inline
    BOOST_VARIANT_AUX_GENERIC_RESULT_TYPE(typename Visitor::result_type)
visitation_impl(
      const int internal_which, const int logical_which
    , Visitor& visitor, VoidPtrCV storage
    , mpl::false_ // is_apply_visitor_unrolled
    , NoBackupFlag no_backup_flag
    , Which* = 0, step0* = 0
    )

Similar to graph failure, 'Which' an 'step0' are used as function template
parameter and have default values...

* Visual Age cpp 6:

- It was not possible to compile the regression tools (filesystem did not
compile). Many other libraries fail on the same compilation issues. Here is
an excerpt of the vacpp log:

xlc-C++-action
../bin/boost/libs/filesystem/build/libboost_filesystem.a/vacpp/debug/excepti
on.o
"boost/type_traits/is_array.hpp", line 40.52: "template <class T> struct
boost::is_array<T []>" is already defined.

"boost/type_traits/is_array.hpp", line 35.66: "is_array<T [N]>" is defined
on line 35 of
"/rms/kplus_dev/users/baplepil/kplusdev/Test/boost_1_31_0_rc2/boost/type_tra
its/is_array.hpp".

"boost/type_traits/is_array.hpp", line 41.52: "template <class T> struct
boost::is_array<const T []>" is already defined.

"boost/type_traits/is_array.hpp", line 36.66: "is_array<const T [N]>" is
defined on line 36 of
"/rms/kplus_dev/users/baplepil/kplusdev/Test/boost_1_31_0_rc2/boost/type_tra
its/is_array.hpp".

"boost/type_traits/is_array.hpp", line 42.52: "template <class T> struct
boost::is_array<volatile T []>" is already defined.

"boost/type_traits/is_array.hpp", line 37.66: "is_array<volatile T [N]>" is
defined on line 37 of
"/rms/kplus_dev/users/baplepil/kplusdev/Test/boost_1_31_0_rc2/boost/type_tra
its/is_array.hpp".

"boost/type_traits/is_array.hpp", line 43.52: "template <class T> struct
boost::is_array<const volatile T []>" is already defined.

"boost/type_traits/is_array.hpp", line 38.66: "is_array<const volatile T
[N]>" is defined on line 38 of
"/rms/kplus_dev/users/baplepil/kplusdev/Test/boost_1_31_0_rc2/boost/type_tra
its/is_array.hpp".

It's seems that the specialization of T[N] and T[] are clashing, but I'm
waiting the expert opinion on how to best fix this.

Well, hopefully fixing some of the above issues should siginificatively
improve the portability.

Baptiste.

----- Original Message -----
From: "Beman Dawes" <bdawes_at_[hidden]>
To: <boost_at_[hidden]>
Sent: Wednesday, January 28, 2004 5:07 PM
Subject: [boost] 1.31.0 Release candidate 2 available

> Release candidate 2 is available at
> http://www.esva.net/~beman/boost_1_31_0_rc2.zip
>
> Feedback appreciated!
>
> Boost developers should limit changes to the RC_1_31_0 branch to fixes for
> showstoppers. Anything less should go in the next release.
>
> --Beman


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk