|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r61556 - in sandbox/move/libs/intrusive: doc proj/vc7ide test
From: igaztanaga_at_[hidden]
Date: 2010-04-25 08:33:41
Author: igaztanaga
Date: 2010-04-25 08:33:39 EDT (Sun, 25 Apr 2010)
New Revision: 61556
URL: http://svn.boost.org/trac/boost/changeset/61556
Log:
Boost.Move review version
Text files modified:
sandbox/move/libs/intrusive/doc/intrusive.qbk | 30 ++++++++++++++++++++++++++----
sandbox/move/libs/intrusive/proj/vc7ide/Intrusive.sln | 2 --
sandbox/move/libs/intrusive/proj/vc7ide/to-do.txt | 1 +
sandbox/move/libs/intrusive/test/any_test.cpp | 27 ---------------------------
sandbox/move/libs/intrusive/test/common_functors.hpp | 2 +-
sandbox/move/libs/intrusive/test/generic_assoc_test.hpp | 8 +++++---
sandbox/move/libs/intrusive/test/set_test.cpp | 1 +
sandbox/move/libs/intrusive/test/smart_ptr.hpp | 6 +++---
8 files changed, 37 insertions(+), 40 deletions(-)
Modified: sandbox/move/libs/intrusive/doc/intrusive.qbk
==============================================================================
--- sandbox/move/libs/intrusive/doc/intrusive.qbk (original)
+++ sandbox/move/libs/intrusive/doc/intrusive.qbk 2010-04-25 08:33:39 EDT (Sun, 25 Apr 2010)
@@ -6,9 +6,9 @@
/]
[library Boost.Intrusive
- [quickbook 1.3]
- [authors [Krzikalla, Olaf], [Gaztañaga, Ion]]
- [copyright 2005 Olaf Krzikalla, 2006-2009 Ion Gaztañaga]
+ [quickbook 1.4]
+ [authors [Krzikalla, Olaf], [Gaztanaga, Ion]]
+ [copyright 2005 Olaf Krzikalla, 2006-2009 Ion Gaztanaga]
[id intrusive]
[dirname intrusive]
[purpose Intrusive containers]
@@ -3183,7 +3183,8 @@
and values is implemented in terms of static functions]. It's possible to use [*stateful] value traits
so that we can separate nodes and values and [*avoid modifying types to insert nodes].
[*Boost.Intrusive] differentiates between stateful and stateless value traits by checking if all
-Node <-> Value transformation functions are static or not:
+Node <-> Value transformation functions are static or not (except for Visual 7.1, since overloaded
+static function detection is not possible, in this case the implementation checks if the class is empty):
* If all Node <-> Value transformation functions are static , a [*stateless]
value traits is assumed. transformations must be static functions.
@@ -3727,6 +3728,27 @@
[section:release_notes Release Notes]
+[section:release_notes_boost_1_43_00 Boost 1.43 Release]
+
+* Fixed bugs
+ [@https://svn.boost.org/trac/boost/ticket/3668 #3668],
+ [@https://svn.boost.org/trac/boost/ticket/3339 #3688],
+ [@https://svn.boost.org/trac/boost/ticket/3698 #3698],
+ [@https://svn.boost.org/trac/boost/ticket/3706 #3706],
+ [@https://svn.boost.org/trac/boost/ticket/3721 #3721].
+ [@https://svn.boost.org/trac/boost/ticket/3729 #3729],
+ [@https://svn.boost.org/trac/boost/ticket/3746 #3746],
+ [@https://svn.boost.org/trac/boost/ticket/3781 #3781],
+ [@https://svn.boost.org/trac/boost/ticket/3829 #3829],
+ [@https://svn.boost.org/trac/boost/ticket/3840 #3840],
+ [@https://svn.boost.org/trac/boost/ticket/3339 #3339],
+ [@https://svn.boost.org/trac/boost/ticket/3419 #3419],
+ [@https://svn.boost.org/trac/boost/ticket/3431 #3431],
+ [@https://svn.boost.org/trac/boost/ticket/4021 #4021],
+
+[endsect]
+
+
[section:release_notes_boost_1_40_00 Boost 1.40 Release]
* Code cleanup in tree_algorithms.hpp and avl_tree_algorithms.hpp
Modified: sandbox/move/libs/intrusive/proj/vc7ide/Intrusive.sln
==============================================================================
--- sandbox/move/libs/intrusive/proj/vc7ide/Intrusive.sln (original)
+++ sandbox/move/libs/intrusive/proj/vc7ide/Intrusive.sln 2010-04-25 08:33:39 EDT (Sun, 25 Apr 2010)
@@ -96,8 +96,6 @@
Debug = Debug
Release = Release
EndGlobalSection
- GlobalSection(ProjectDependencies) = postSolution
- EndGlobalSection
GlobalSection(ProjectConfiguration) = postSolution
{977B61B4-9968-497C-9F0B-24A8145473B8}.Debug.ActiveCfg = Debug|Win32
{977B61B4-9968-497C-9F0B-24A8145473B8}.Debug.Build.0 = Debug|Win32
Modified: sandbox/move/libs/intrusive/proj/vc7ide/to-do.txt
==============================================================================
--- sandbox/move/libs/intrusive/proj/vc7ide/to-do.txt (original)
+++ sandbox/move/libs/intrusive/proj/vc7ide/to-do.txt 2010-04-25 08:33:39 EDT (Sun, 25 Apr 2010)
@@ -14,3 +14,4 @@
-> Non-array buckets
-> Document incremental<> option better
-> Assure stable order for optimize_multikey and inverse order otherwise
+-> add an option to unordered containers to get O(1) traversal and begin()/end() even with very low load factors
Modified: sandbox/move/libs/intrusive/test/any_test.cpp
==============================================================================
--- sandbox/move/libs/intrusive/test/any_test.cpp (original)
+++ sandbox/move/libs/intrusive/test/any_test.cpp 2010-04-25 08:33:39 EDT (Sun, 25 Apr 2010)
@@ -1,4 +1,3 @@
-/*
/////////////////////////////////////////////////////////////////////////////
//
// (C) Copyright Olaf Krzikalla 2004-2006.
@@ -190,29 +189,3 @@
}
#include <boost/intrusive/detail/config_end.hpp>
-*/
-
-#include <boost/intrusive/detail/function_detector.hpp>
-
-#include <boost/static_assert.hpp>
-#include <cassert>
-
-class myclass
-{
- public:
- bool some_func(int);
- static bool some_static_func(int);
-};
-
-BOOST_INTRUSIVE_CREATE_FUNCTION_DETECTOR(some_func)
-BOOST_INTRUSIVE_CREATE_FUNCTION_DETECTOR(some_static_func)
-BOOST_INTRUSIVE_CREATE_FUNCTION_DETECTOR(inexistent_func)
-
-int main()
-{
- using namespace boost::intrusive::function_detector;
- BOOST_STATIC_ASSERT(( NonStaticFunction == BOOST_INTRUSIVE_DETECT_FUNCTION(myclass, bool, some_func, (int)) ));
- BOOST_STATIC_ASSERT(( StaticFunction == BOOST_INTRUSIVE_DETECT_FUNCTION(myclass, bool, some_static_func, (int)) ));
- BOOST_STATIC_ASSERT(( NotFound == BOOST_INTRUSIVE_DETECT_FUNCTION(myclass, bool, inexistent_func, (int)) ));
- return 0;
-}
Modified: sandbox/move/libs/intrusive/test/common_functors.hpp
==============================================================================
--- sandbox/move/libs/intrusive/test/common_functors.hpp (original)
+++ sandbox/move/libs/intrusive/test/common_functors.hpp 2010-04-25 08:33:39 EDT (Sun, 25 Apr 2010)
@@ -29,7 +29,7 @@
{
typedef typename std::iterator_traits<Pointer>::value_type value_type;
BOOST_INTRUSIVE_INVARIANT_ASSERT(( detail::is_same<T, value_type>::value ));
- delete detail::get_pointer(p);
+ delete detail::boost_intrusive_get_pointer(p);
}
};
Modified: sandbox/move/libs/intrusive/test/generic_assoc_test.hpp
==============================================================================
--- sandbox/move/libs/intrusive/test/generic_assoc_test.hpp (original)
+++ sandbox/move/libs/intrusive/test/generic_assoc_test.hpp 2010-04-25 08:33:39 EDT (Sun, 25 Apr 2010)
@@ -399,10 +399,12 @@
{
assoc_type testset;
typedef typename std::vector<value_type>::iterator vec_iterator;
- for(vec_iterator it(--values.end()), itend(--values.begin())
- ; it != itend
- ; --it){
+
+ for(vec_iterator it(--values.end()); true; --it){
testset.push_front(*it);
+ if(it == values.begin()){
+ break;
+ }
}
BOOST_TEST(testset.size() == values.size());
TEST_INTRUSIVE_SEQUENCE_EXPECTED(values, testset.begin());
Modified: sandbox/move/libs/intrusive/test/set_test.cpp
==============================================================================
--- sandbox/move/libs/intrusive/test/set_test.cpp (original)
+++ sandbox/move/libs/intrusive/test/set_test.cpp 2010-04-25 08:33:39 EDT (Sun, 25 Apr 2010)
@@ -147,6 +147,7 @@
}
};
+
int main( int, char* [] )
{
test_main_template<void*, false>()();
Modified: sandbox/move/libs/intrusive/test/smart_ptr.hpp
==============================================================================
--- sandbox/move/libs/intrusive/test/smart_ptr.hpp (original)
+++ sandbox/move/libs/intrusive/test/smart_ptr.hpp 2010-04-25 08:33:39 EDT (Sun, 25 Apr 2010)
@@ -34,7 +34,7 @@
struct empty_type{};
template<class T>
-struct random_it
+struct random_it
: public boost::iterator<std::random_access_iterator_tag,
T, std::ptrdiff_t, T*, T&>
{
@@ -303,10 +303,10 @@
pt2 = ptr;
}
-//!detail::get_pointer() enables boost::mem_fn to recognize smart_ptr.
+//!detail::boost_intrusive_get_pointer() enables boost::mem_fn to recognize smart_ptr.
//!Never throws.
template<class T>
-inline T* get_pointer(const smart_ptr<T> & p)
+inline T* boost_intrusive_get_pointer(const smart_ptr<T> & p)
{ return p.get(); }
//!Simulation of static_cast between pointers. Never throws.
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk