This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: profile mode broken with -std=gnu++0x
- From: Paolo Carlini <paolo dot carlini at oracle dot com>
- To: Silvius Rus <rus at google dot com>
- Cc: libstdc++ <libstdc++ at gcc dot gnu dot org>
- Date: Wed, 05 May 2010 11:30:30 +0200
- Subject: Re: profile mode broken with -std=gnu++0x
- References: <r2pe90dbffc1005041939g8c3d3f36q75ebc11e0d9a2656@mail.gmail.com>
Hi,
> I built trunk today and realized that the profile mode is broken with
> -std=gnu++0x. Simply including <vector> does not compile.
>
> Many tests are thus broken with "make check-profile", as they request
> building with -std=gnu++0x.
>
> Could you please confirm this breakage by trying to compile a file
> containing only "#include <vector>" with "-D_GLIBCXX_PROFILE
> -std=gnu++0x"? If it confirms, do you happen to know which change
> might have caused this?
>
it's because stl_algo.h now includes <random> as an implementation
detail - only for uniform_int_distribution - which uses <vector>, which
in profile mode ends up including <algorithm>, thus stl_algo.h. I can
imagine more sophisticated ways of fixing this but for now, for 4.5.1, I
think I will just change stl_algo.h to include <tr1/random> instead.
Sorry for the breakage, it's probably my fault, I try to regression test
profile mode too, but a more continuous involvement of its author would
be welcome...
Paolo.