This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: [profile-stdlib] PATCH: Add three diagnostics and implement cost factor parameterization
- From: Jonathan Wakely <jwakely dot gcc at gmail dot com>
- To: Changhee Jung <haemil99 at gmail dot com>
- Cc: libstdc++ at gcc dot gnu dot org, Silvius Rus <rus at google dot com>, Nate Clark <ntclark at cc dot gatech dot edu>
- Date: Mon, 7 Dec 2009 08:18:33 +0000
- Subject: Re: [profile-stdlib] PATCH: Add three diagnostics and implement cost factor parameterization
- References: <86887f550912061938t5fcc8c8dv135ce56b92d87433@mail.gmail.com>
Hi Changee,
Some initial comments, I'll take another look later.
I noticed a few formatting issues in
libstdc++-v3/include/profile/iterator_tracker.h - overlong lines, and
"public:" indented incorrectly.
The doxygen comment for profile/algorithm says:
/** @file parallel/algorithm
This include guard is not in the correct format:
#ifndef PROFCXX_PROFILER_LIST_TO_SLIST_H
That could clash with a user header (I don't like the format used by
the other profile headers, with two trailing underscores, but that
seems to be the form used consistently.)
This is wrong:
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+ swap(vector&& __x)
+#else
swap(vector& __x)
+#endif
vector::swap() does not work with rvalues now, the same goes for
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+ template<typename _Tp, typename _Alloc>
+ inline void
+ swap(vector<_Tp, _Alloc>&& __lhs, vector<_Tp, _Alloc>& __rhs)
+ { __lhs.swap(__rhs); }
+
+ template<typename _Tp, typename _Alloc>
+ inline void
+ swap(vector<_Tp, _Alloc>& __lhs, vector<_Tp, _Alloc>&& __rhs)
+ { __lhs.swap(__rhs); }
+#endif
Regards,
Jonathan