Daniel James
239453bead
Fix unordered on Sun 5.12 compiler. Refs #9424 .
...
[SVN r86792]
2013-11-23 11:43:19 +00:00
Daniel James
ddab816ed7
Use BOOST_HAS_PRAGMA_ONCE.
...
Remembering to first include config, so that it'll actually be defined.
[SVN r86726]
2013-11-16 20:13:24 +00:00
Daniel James
007ddb9a5a
Update the unordered rationale.
...
I just noticed that it wan't updated for the changes on 64 bit platforms.
Not very good, but I don't want to spend too long on this. I'm tempted to just
delete it.
[SVN r86608]
2013-11-10 23:26:21 +00:00
Daniel James
6b1a4bfeb7
Link to archived copy of Thomas Wang's integer hash function.
...
His site's no longer on the web, so use web.archive.org instead.
[SVN r86607]
2013-11-10 23:25:54 +00:00
Daniel James
6f3dee13a8
Extend the Visual C++ workaround to 3 parameters.
...
To avoid collision with piecewise construction.
[SVN r86506]
2013-10-28 20:32:52 +00:00
Daniel James
7f14796ba4
Try to work around Visual C++'s variadic overload bug.
...
Possibly too late for the release.
[SVN r86482]
2013-10-27 17:58:09 +00:00
Daniel James
cfb4a9d254
Revert attempted work around for Visual C++.
...
[SVN r86478]
2013-10-27 13:14:12 +00:00
Daniel James
621c1523c0
Fix potential msvc 12 workaround.
...
[SVN r86433]
2013-10-25 22:21:51 +00:00
Daniel James
b4d62e4670
Attempt to work around Visual C++ initializer list overload bug.
...
I'm hoping that these templated initializer lists will be considered a better
overload than the others. I have no idea if it will actually work, this is a
real shot in the dark.
The enable_if checks should probably be for implicit conversion, there might
be a chance this could override a valid call when there's an explicit
conversion.
[SVN r86419]
2013-10-24 18:11:35 +00:00
Daniel James
3922d1bb63
This special case doesn't seem to apply to the latest Visual C++.
...
[SVN r86365]
2013-10-19 16:53:37 +00:00
Daniel James
033a611f71
Change log.
...
[SVN r86173]
2013-10-06 08:03:12 +00:00
Stephen Kelly
3aa91346ea
Remove obsolete MSVC check from pragma guard
...
git grep -h -B1 "^#\s*pragma once" | grep -v pragma | sort | uniq
is now clean.
[SVN r85952]
2013-09-26 13:02:51 +00:00
Daniel James
de0366105c
Avoid Visual C++ warning.
...
Avoiding:
warning C4127: conditional expression is constant
[SVN r85281]
2013-08-10 13:09:28 +00:00
Daniel James
3508ceaa58
Avoid exposing functions via ADL.
...
I'd put the iterators in their own namespace so that they wouldn't pick
up functions in detail via ADL, but I forgot that their template
parameters would cause that to happen anyway. The simplest way to fix
that for now is just to stuff the problematic functions into a
sub-namespace, so that they're no longer exposed.
[SVN r85280]
2013-08-10 13:09:08 +00:00
Daniel James
29660f9c4d
Remove unused typedef. Refs #8874 .
...
[SVN r85245]
2013-08-08 20:28:53 +00:00
Daniel James
52b42b4e48
Fix unused variable warning. Refs #8851 .
...
Bit annoying that `boost::ignore_unused_variable_warning` is in
`<boost/concept_check.hpp>`.
[SVN r85244]
2013-08-08 20:27:40 +00:00
Daniel James
e6a6fe92d7
Fix misleading documentation about move support.
...
[SVN r84985]
2013-07-08 22:11:54 +00:00
Daniel James
fb93c8cb86
Change log entries for 1.54.0
...
[SVN r84496]
2013-05-25 15:45:51 +00:00
Daniel James
8f0126a13a
Revert siphash example.
...
Since I'm not going to release it.
[SVN r84434]
2013-05-22 21:48:29 +00:00
Daniel James
0f080552fa
Remove 'private' definition that I used for debugging.
...
[SVN r84408]
2013-05-21 22:50:19 +00:00
Daniel James
f8a6ea40a1
Add noexcept annotations to iterators.
...
I couldn't find any sepecification in the standard, but I'd assume that since
`begin` and `end` are both `noexcept`, the iterator copy constructors must be.
To justify adding `noexcept` to these members, see 17.6.3.5 (part of the
allocator requirements) of n3485, which says about allocator's pointer types,
"No constructor, comparison operator, copy operation, move operation, or swap
operation on these types shall exit via an exception."
Not relevant in this case but allocator pointers also need to model
NullablePointer. From 17.6.3.3, "No operation which is part of the
NullablePointer requirements shall exit via an exception."
[SVN r84374]
2013-05-19 15:00:40 +00:00
Daniel James
1a067034c1
Add conditional noexcept for move constructors.
...
Also added `noexcept` for destructors because of a gcc bug, see:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56191
Found via:
http://stackoverflow.com/questions/15721544/destructors-and-noexcept
[SVN r84373]
2013-05-19 14:30:12 +00:00
Daniel James
d603e75d03
Use nothrow move construction for function objects, when available.
...
[SVN r84277]
2013-05-13 23:13:04 +00:00
Daniel James
a422b40041
Use nothrow move assignment for function objects, when available.
...
Originally I was going to use two different versions of `hash_functions`, but
the recent discussion on binary compatibility persuaded me not to.
[SVN r84276]
2013-05-13 23:12:46 +00:00
Daniel James
44f61e5878
Add BOOST_NOEXCEPT to unordered container methods.
...
I haven't done the iterators yet.
[SVN r84253]
2013-05-12 14:34:45 +00:00
Daniel James
27c4e90374
Add trailing newlines to siphash examples.
...
I'm not sure if I'll actually release this example. I don't think it does a
good job of demonstrating what I wanted.
[SVN r84249]
2013-05-12 14:33:15 +00:00
Daniel James
6b21eeccab
Unordered: Fix move assignment with unequal allocators.
...
[SVN r82614]
2013-01-25 21:22:03 +00:00
Daniel James
bf1f24ab04
Unordered: Initial stab at siphash example.
...
[SVN r81973]
2012-12-15 16:42:44 +00:00
Daniel James
64994d76dd
Unordered: Detab.
...
[SVN r81762]
2012-12-07 17:06:11 +00:00
Daniel James
10049f8325
Unordered: Missing final newlines.
...
[SVN r81761]
2012-12-07 17:05:36 +00:00
Marshall Clow
1bd3b029fa
Removed usage of deprecated macros
...
[SVN r81563]
2012-11-26 17:47:12 +00:00
Daniel James
3305caf40c
Unordered: Changelog notes.
...
[SVN r81474]
2012-11-22 08:59:27 +00:00
Marshall Clow
85d2657ac1
Remove usage of deprecated macros
...
[SVN r81449]
2012-11-21 01:21:54 +00:00
Daniel James
8fb85cbb8d
Unordered: Fix overload edge case for piecewise construction.
...
[SVN r81393]
2012-11-17 12:03:55 +00:00
Daniel James
da455124d2
Unordered: Try to make the piecewise_construct emulation a little more readable.
...
[SVN r81392]
2012-11-17 12:03:32 +00:00
Daniel James
ef4d33ce89
Unordered: Remove the deprecated equality implementation.
...
[SVN r81385]
2012-11-17 10:30:19 +00:00
Daniel James
7eefe62efe
Unordered: Remove deprecated variadic pair constructors.
...
This was emulating them as specified in older standard drafts.
[SVN r81384]
2012-11-17 10:28:35 +00:00
Daniel James
73c0d85ae6
Unorderd: Stop deriving from hash policy.
...
[SVN r81209]
2012-11-05 18:33:29 +00:00
Daniel James
d495cbd7e6
Unordered: Clean up the pointer silliness.
...
[SVN r81208]
2012-11-05 18:33:15 +00:00
Daniel James
ccc3d1c83d
Unordered: Simpler erase implementation.
...
[SVN r81207]
2012-11-05 18:32:59 +00:00
Daniel James
38d8d052d1
Unordered: Simplify pointer use.
...
[SVN r81206]
2012-11-05 18:32:45 +00:00
Daniel James
2e26534659
Unordered: Improved exception test thing.
...
Allows repetition of exception tests + separate running the tests so that
different tests types or configurations can be mixed up.
[SVN r81030]
2012-10-21 00:20:07 +00:00
Daniel James
d1a6e948e3
Unordered: bcp friendly macros.
...
[SVN r81029]
2012-10-21 00:17:40 +00:00
Daniel James
8f8ea09ce8
Unordered: Fix bug when erasing a range, refs #7471 .
...
[SVN r80894]
2012-10-07 08:19:01 +00:00
Daniel James
9b398ba0c9
Unordered: Update change log.
...
[SVN r80776]
2012-09-30 11:55:58 +00:00
Daniel James
556adc1de1
Unordered: Fix the Visual C++ 11 version number.
...
[SVN r80768]
2012-09-30 08:29:26 +00:00
Daniel James
3f060a70d1
Unordered: Fix unnecessary_copy_tests + extra tests.
...
It looks the odd result in unnecessary_copy_tests on Visual C++ 11 is not a
bug, but add some extra tests just to make sure. Also some extra rehash and
reserve testing thrown in.
[SVN r80705]
2012-09-26 08:09:26 +00:00
Daniel James
d6322718f3
Unordered: A bit more feedback from unnecessary_copy_tests
...
[SVN r80635]
2012-09-22 18:32:22 +00:00
Daniel James
94ef1ac391
Unordered: Support empty containers in node_holder.
...
[SVN r80562]
2012-09-17 18:59:29 +00:00
Daniel James
53f278312f
Unordered: Get rid of get_start.
...
[SVN r80561]
2012-09-17 18:59:03 +00:00
Daniel James
549b93e629
Unordered: delete_buckets works when buckets_ is null.
...
[SVN r80560]
2012-09-17 18:58:28 +00:00
Daniel James
c2e7221bf9
Unordered: Set max_load_ to 0 when there are no buckets.
...
[SVN r80559]
2012-09-17 18:57:58 +00:00
Daniel James
37d58e84e3
Unordered: Fix creating extra node when resizing.
...
[SVN r80518]
2012-09-13 19:50:31 +00:00
Daniel James
ec6219fe13
Unordered: Fix incorrect assertion.
...
[SVN r80508]
2012-09-12 21:09:39 +00:00
Daniel James
e68f0c341e
Unordered: Fix object counts in tests.
...
[SVN r80417]
2012-09-06 08:49:43 +00:00
Daniel James
f47f0f8d16
Unordered: Fix some issues with the tests.
...
[SVN r80416]
2012-09-05 23:33:22 +00:00
Daniel James
ed369d6374
Unordered: Move MSVC warning suppression to correct location.
...
[SVN r80412]
2012-09-05 19:02:29 +00:00
Daniel James
b6b54610c6
Unordered: Repeat assign tests several times.
...
[SVN r80411]
2012-09-05 19:02:04 +00:00
Daniel James
1d03bbe213
Unordered: Re-initialise reused nodes.
...
[SVN r80410]
2012-09-05 19:01:17 +00:00
Daniel James
32ab636fe8
Unordered: delete/destroy/clear cleanup.
...
[SVN r80390]
2012-09-03 20:06:00 +00:00
Daniel James
8e5ffbbe6c
Unordered: Clean up swap.
...
[SVN r80389]
2012-09-03 20:05:39 +00:00
Daniel James
e7f495c094
Unordered: Cleaning up a bit.
...
[SVN r80388]
2012-09-03 20:05:15 +00:00
Daniel James
1e07edc1ad
Unordered: No need for value_allocator.
...
[SVN r80387]
2012-09-03 20:04:55 +00:00
Daniel James
2f09079d3f
Unordered: Remove the now unnecessary uses of ->.
...
[SVN r80386]
2012-09-03 20:04:35 +00:00
Daniel James
a1bdd82bd5
Unordered: Get rid of buckets.
...
[SVN r80385]
2012-09-03 20:04:15 +00:00
Daniel James
45b6340a98
Unordered: Avoid allocating nodes in table constructor.
...
[SVN r80384]
2012-09-03 20:03:55 +00:00
Daniel James
22e6daac6c
Unordered: Use node_holder for move.
...
[SVN r80383]
2012-09-03 20:03:35 +00:00
Daniel James
9ea735c975
Unordered: Move iterators to top of buckets.hpp
...
[SVN r80382]
2012-09-03 20:03:15 +00:00
Daniel James
31f3a10d33
Unordered: Tweak node_construct functions.
...
[SVN r80381]
2012-09-03 20:02:53 +00:00
Daniel James
d9f49f2b44
Unordered: Faster assign implementation
...
[SVN r80380]
2012-09-03 20:02:31 +00:00
Daniel James
73c269398a
Unordered: Generic copy/move implementation.
...
[SVN r80379]
2012-09-03 20:02:10 +00:00
Daniel James
7a4930f1a1
Unordered: Avoid unnecessary swapping in rehash and move.
...
[SVN r80378]
2012-09-03 20:01:50 +00:00
Daniel James
c0faf59a86
Unordered: De-template constructor for allocator2 from allocator.
...
Sun is failing one of the tests because it isn't using it implicitly.
[SVN r80276]
2012-08-28 08:04:51 +00:00
Daniel James
a822b27efc
Unordered: Weaken requirements in compile tests.
...
Assigning a container requires that its elements can be assignable. Could split
the tests up so that other tests aren't assignable, but it doesn't seem worth
the hassle.
[SVN r80228]
2012-08-25 21:56:16 +00:00
Daniel James
f1e716d897
Unordered: Stronger assign testing.
...
[SVN r80227]
2012-08-25 21:55:46 +00:00
Daniel James
612d68eecd
Unordered: More invariant testing.
...
In case there are elements in buckets that aren't in the element list. Required
because the data structure has changed since the original implementation.
[SVN r80226]
2012-08-25 21:55:18 +00:00
Daniel James
aefea862c2
Unordered: Two exception testing allocators.
...
For different C++11 properties.
[SVN r80225]
2012-08-25 21:54:50 +00:00
Daniel James
f8968ab022
Unordered: Better swap assertion.
...
[SVN r80224]
2012-08-25 21:54:18 +00:00
Daniel James
8f86c2464e
Unordered: Rename *_impl to *_value_impl.
...
To make it clear that they should only be used to construct and destroy
the value, and not nodes or buckets.
[SVN r80223]
2012-08-25 21:53:53 +00:00
Daniel James
cd57bf5000
Unordered: And use allocator traits to destroy values.
...
[SVN r80222]
2012-08-25 21:53:25 +00:00
Daniel James
a7125259d8
Unordered: When full construct is available, use it for value.
...
[SVN r80221]
2012-08-25 21:52:57 +00:00
Daniel James
3a163b5449
Unordered: Move some things around.
...
- Move `allocator_traits` before `construct_impl` so the
`construct_impl` can be changed to use `allocator_traits`.
- Moved some move utilities out of `allocate.hpp` because they're
really nothing to do with allocation and construction.
[SVN r80220]
2012-08-25 21:52:28 +00:00
Daniel James
ff31c73970
Unordered: Go back to the old method for constructing nodes.
...
Reverts much of [78349]. Keeps the variadic construct.
[SVN r80219]
2012-08-25 21:51:24 +00:00
Daniel James
2e11fd8a86
Unordered: Test number of copies and moves for moves on all compilers.
...
Mainly because I want to get more info on the odd test failure for Visual C++
11. I expect that with move emulation these results could vary considerably,
and since I've only tested with gcc and clang so far, it's quite likely that
this test will now fail for other compilers.
[SVN r80200]
2012-08-25 12:52:31 +00:00
Daniel James
09c546f63a
Unordered: Document more fine grained requirements.
...
[SVN r79879]
2012-08-05 18:26:02 +00:00
Daniel James
5be71a0e90
Unordered: Output stages in at_tests.
...
Getting a memory deallocation error from Sandia's linux c++11 clang. Add some
trace output to see if it gives a clue where it's going wrong.
[SVN r79793]
2012-07-29 07:18:35 +00:00
Daniel James
27f5496a65
Unordered: Fix some uses of rvalues refs/move.
...
[SVN r79792]
2012-07-29 07:17:57 +00:00
Daniel James
918b3da91d
Unordered: Use a SFINAE parameter rather than return type for C++03 compilers.
...
Seems that g++ 3.4 has problems with overloads that are only distinguished by
SFINAE return types.
[SVN r79762]
2012-07-26 22:23:09 +00:00
Daniel James
61516be1db
Unordered: Remove use of try..catch.
...
So that it'll work when exceptions are disabled.
[SVN r79679]
2012-07-22 20:14:20 +00:00
Daniel James
7c968fd38d
Unordered: Avoid an MSVC warning.
...
[SVN r79651]
2012-07-22 07:14:42 +00:00
Daniel James
4a066e4b18
Unordered: Fix unnecessary_copy_tests for MSVC10
...
Compilers with rvalue references can avoid creating a node, as they can use the
value from the rvalue reference to check if the value is already in the
container (in this case it is) before creating the node. Could possibly do the
same for compilers without rvalue references, if it can get a value out of
Boost.Move's rvalue reference emulation.
[SVN r79503]
2012-07-14 16:45:54 +00:00
Marshall Clow
0fccd93e29
Switch from deprecated macros to new shiny ones; no functionality change
...
[SVN r79396]
2012-07-09 22:08:01 +00:00
Daniel James
6932a2d571
Unordered: Fix using a C++03 allocator with C++11 compiler.
...
Because the nodes had an implicit constructor, the `has_construct` traits was
detecting that the nodes could be constructed by construction then copy, which
really wasn't wanted. Also add a check that nodes aren't been copy constructed
to make sure this doesn't happen again. Refs #7100 .
[SVN r79358]
2012-07-08 11:55:57 +00:00
Daniel James
f387994422
Unordered: Test with more allocators.
...
Causes some C++11 failures....
[SVN r79357]
2012-07-08 11:55:35 +00:00
Daniel James
958b1d468f
Unordered: Reduce the amount of meta-stuff in the tests.
...
Some of this was there for older compilers, some is just premature
generalization. There's still too much metaprogramming, but these are things
that are relatively easy to remove.
[SVN r79356]
2012-07-08 11:55:10 +00:00
Daniel James
f5292fd9f7
Unordered: Simplify the object count stuff.
...
[SVN r79355]
2012-07-08 11:54:47 +00:00
Daniel James
ada08d9459
Unordered: Turn off warnings-as-errors.
...
Getting spurious failures for gcc 4.0 and 4.8. It's more hassle than it's
worth.
[SVN r79354]
2012-07-08 11:54:21 +00:00
Daniel James
9a284b4106
Unordered: Remove some junk from the end of memory.hpp
...
[SVN r79353]
2012-07-08 11:54:01 +00:00
Daniel James
98083078a3
Unordered: Remove malloc_allocator.
...
It was originally introduced because of some issues with Boost.Test and older
compilers, neither of which I'm using now. Simplifies a few things.
[SVN r79352]
2012-07-08 11:53:39 +00:00
Daniel James
b8d96be8f7
Unordered: Macro to simplifiy variadic/emplace_args creation.
...
[SVN r79351]
2012-07-08 11:53:16 +00:00
Daniel James
68edec9f97
Unordered: Remove old, unused function.
...
[SVN r79350]
2012-07-08 11:52:38 +00:00
Daniel James
39bafd7b10
Unordered: Reapply changes reverted in r78788.
...
[SVN r79163]
2012-06-28 20:58:56 +00:00
Daniel James
0acb4ee3e6
Unordered: Document move insert.
...
Just a quick copy and paste for tonight's documentation build. May edit a bit
before release.
[SVN r78810]
2012-06-04 22:53:43 +00:00
Daniel James
893ebc5adb
Unordered: Don't use std::allocator_traits on Visual C++ 11.
...
[SVN r78789]
2012-06-01 11:06:03 +00:00
Daniel James
7158700502
Unordered: Revert unmerged changes in trunk.
...
So that I can fix issues in the beta.
[SVN r78788]
2012-06-01 11:03:22 +00:00
Daniel James
1eac47a275
Unordered: Use Boost.Move in a few more places.
...
Should be better for compilers with variadic parameters, but no rvalue
references. If such a thing ever exists.
[SVN r78536]
2012-05-21 22:15:33 +00:00
Daniel James
c6f0175c79
Unordered: Combine emplace_args + allocator_helpers.
...
[SVN r78535]
2012-05-21 22:14:59 +00:00
Daniel James
6031b66f99
Unordered: Fix namespaces for renaming in bcp. Refs #6905 .
...
[SVN r78491]
2012-05-17 06:20:55 +00:00
Daniel James
d863f17673
Unordered: Try to fix Sun compile error.
...
The Sun compile tests have started failing, I'm not sure what triggered this,
but it seems to be confused by the various uses of the identifier `node`, so
try renaming the class and see if that improves things.
[SVN r78413]
2012-05-10 21:37:44 +00:00
Daniel James
24c08646f4
Unordered: Fix macros for picking construct/destroy.
...
[SVN r78378]
2012-05-08 11:02:29 +00:00
Daniel James
6604abe600
Unordered: allocator_helpers cleanup.
...
[SVN r78370]
2012-05-07 18:10:27 +00:00
Daniel James
39aed02e32
Unordered: Check that reserve works for both range and single element insert.
...
[SVN r78369]
2012-05-07 18:10:04 +00:00
Daniel James
6b44f3b887
Unordered: Fix destroy to match construct in last commit.
...
[SVN r78368]
2012-05-07 18:09:25 +00:00
Daniel James
cd88cb4a30
Unordered: 'full construct' requires SFINAE expressions.
...
[SVN r78367]
2012-05-07 12:22:24 +00:00
Daniel James
32dc45b7bd
Unordered: Implement reserve. Refs #6857 .
...
[SVN r78365]
2012-05-07 10:58:32 +00:00
Daniel James
275b03e76b
Unordered: Avoid -Wshadow warnings. Refs #6190 .
...
[SVN r78364]
2012-05-07 10:57:35 +00:00
Daniel James
995ef1efdb
Unordered: Use std::allocator_trait's variadic construct.
...
[SVN r78349]
2012-05-06 12:29:24 +00:00
Daniel James
8cb85937c4
Unordered: Reactivate std::allocator_traits for gcc 4.7, and try for Visual C++ 11
...
[SVN r78348]
2012-05-06 12:28:57 +00:00
Daniel James
e615ac67c2
Unordered: allocator_helpers.hpp was moved.
...
[SVN r78347]
2012-05-06 12:28:05 +00:00
Daniel James
401df0f2fb
Unordered/Hash: Release notes.
...
[SVN r78318]
2012-05-03 21:35:51 +00:00
Daniel James
531f6804ad
Unordered: Disable std::allocator_traits on gcc for now.
...
[SVN r78166]
2012-04-23 20:52:08 +00:00
Daniel James
d5230a874b
Unordered: Rejig some of the emplace_args macro code. Refs #6784
...
This is a bit cleaner and will hopefully fix the Sun problems.
[SVN r77972]
2012-04-14 17:32:28 +00:00
Daniel James
030fd55d02
Unordered: Pull forward declarations out of detail/fwd.hpp
...
[SVN r77835]
2012-04-08 15:30:35 +00:00
Daniel James
626bb48013
Unordered: Use iterators in more of the implementation methods.
...
[SVN r77834]
2012-04-08 15:30:14 +00:00
Daniel James
e64f82ed03
Unordered: Fix equality for multimap/multiset.
...
[SVN r77833]
2012-04-08 15:29:49 +00:00
Daniel James
c8c71d0ad1
Unordered/hash: Avoid a gcc warning. Refs #6771
...
[SVN r77832]
2012-04-08 15:29:15 +00:00
Daniel James
4e759b4444
Unordered: Call policy functions as static functions.
...
[SVN r77831]
2012-04-08 15:28:26 +00:00
Marshall Clow
9f199eaa23
Updated Boost.Unordered to use BOOST_NO_0X_HDR_INITIALIZER_LIST instead of (soon to be deprecated) BOOST_NO_INITIALIZER_LISTS
...
[SVN r77154]
2012-03-02 16:43:58 +00:00
Daniel James
2fed2fbd9e
Unordered: Hashing policy for 64 bit computers.
...
[SVN r77066]
2012-02-18 15:47:59 +00:00
Daniel James
29d63e378b
Unordered: Remove unnecessary typename.
...
Oddly, newer versions of gcc don't complain about it.
[SVN r77043]
2012-02-16 20:53:45 +00:00
Daniel James
8a1a475c58
Unordered: Use container's allocator_traits for old Visual C++.
...
[SVN r77017]
2012-02-14 23:55:09 +00:00
Daniel James
08230efb44
Unordered: Use C++11 allocator_traits with gcc 4.7.
...
[SVN r76970]
2012-02-11 12:33:25 +00:00
Daniel James
2aee3add16
Unordered: Remove some of the smaller primes.
...
There's quite a high chance of collisions for these values.
[SVN r76969]
2012-02-11 12:33:02 +00:00
Daniel James
f6b8d3957d
Unordered: Remove unnecessary typename.
...
[SVN r76906]
2012-02-05 23:21:45 +00:00
Daniel James
992cc0b077
Unordered: Some C++11 allocator_traits fixes.
...
Can now be used with g++ 4.7. Not activating by default yet.
[SVN r76893]
2012-02-05 08:45:52 +00:00
Daniel James
2f92b12205
Unordered: Missing include in test header.
...
[SVN r76892]
2012-02-05 08:45:31 +00:00
Daniel James
2e80a82554
Unordered: Fix undefined macro warnings. Refs #6522 .
...
Just removing the rv reference stuff in extract_keys. I don't it's
needed anyway.
[SVN r76891]
2012-02-05 08:44:22 +00:00
Daniel James
51d2e2564e
Unordered: Add tests for when Boost.Move is activated.
...
[SVN r76415]
2012-01-11 22:23:49 +00:00
Daniel James
2665090568
Unordered: Use Boost.Move for variadic forwarding.
...
[SVN r76331]
2012-01-06 08:36:43 +00:00
Daniel James
d70fcb8c25
Unordered: Make using Boost.Move optional.
...
[SVN r76330]
2012-01-06 08:35:51 +00:00
Daniel James
ac0a2fe6c9
Fix 'occurred' in iostreams and unordered. Refs #6003
...
[SVN r76144]
2011-12-24 19:00:08 +00:00
Daniel James
6c09b89d0c
Unordered: Change log for fairly minor changes.
...
[SVN r75907]
2011-12-11 21:36:26 +00:00
Daniel James
8f982c8b27
Unordered: Fix forwarding from emplace.
...
[SVN r75856]
2011-12-07 19:18:11 +00:00
Daniel James
a61e876300
Unordered: emplace cleanup.
...
- Always construct iterator in detail for consistency.
- Move 0-argument emplace to start of overloads.
[SVN r75744]
2011-11-30 08:21:58 +00:00
Daniel James
684e40464f
Unordered: Manually write out some overloads for emplace.
...
Clang creates horrific error messages for Boost.Preprocessor based code,
so for small number of arguments manually write out a few important
functions. Not doing this everywhere.
[SVN r75743]
2011-11-30 08:21:38 +00:00
Daniel James
2507fd78e3
Unordered: Move rebind into 'types' classes.
...
Makes the types in error messages a tad bit nicer.
[SVN r75742]
2011-11-30 08:21:04 +00:00
Daniel James
21f1fe8185
Unordered: Try to avoid warning from boost/cstdint.hpp.
...
[SVN r75607]
2011-11-22 22:13:12 +00:00
Daniel James
aeea8e05ad
Unordered: Fix gcc warning and re-enable warnings-as-errors for gcc.
...
[SVN r75599]
2011-11-21 23:21:11 +00:00
Daniel James
11c9955902
Unordered: Remove support for TR1 tuples. Refs #6111 .
...
[SVN r75432]
2011-11-10 15:16:06 +00:00
Daniel James
9cb361f35e
Unordered: construct_from_tuple for old versions of sun.
...
Not properly tested, as I haven't got the compiler fully working on my
machine.
[SVN r75341]
2011-11-06 09:34:54 +00:00
Daniel James
c3477b2624
Unordered: Don't use SFINAE expression hack on Visual C++.
...
Sometimes it doesn't work. This means I can clean up the implementation
for other compilers, but I'll leave that for now.
[SVN r75167]
2011-10-29 16:31:40 +00:00
Daniel James
a5dcc9dab0
Unordered: Return iterators in pairs instead of node_pointers.
...
It looks like the current version doesn't work with a correct
implementation of C++11 pairs since they don't use explicit conversions.
So just return the correct type in the first place.
Should probably be using iterators in other places as well. I was using
node_pointers everywhere due to some legacy from older versions.
[SVN r75158]
2011-10-28 17:42:51 +00:00
Daniel James
6ebc2e72ff
Unordered: Rename B0, B1 etc. to avoid macro clash. Refs #6062 .
...
[SVN r75123]
2011-10-26 21:31:27 +00:00
Daniel James
d2a6ad8c72
Unordered: Documentation update.
...
[SVN r74962]
2011-10-16 10:31:25 +00:00
Daniel James
087962c16e
Unordered: Fix move tests where moving returned values is not supported.
...
The propagate on move tests were failing because the values were being
copied not moved - so the container was check propagate on copy instead.
Because those tests are now weaker, and some new ones that will
hopefully work.
[SVN r74914]
2011-10-11 08:37:06 +00:00
Daniel James
4471e056f4
Unordered: Avoid passing UDTs through ....
...
[SVN r74913]
2011-10-11 08:36:23 +00:00
Daniel James
b56a5ead66
Unordered: Some inspect fixes.
...
[SVN r74908]
2011-10-11 00:31:19 +00:00
Daniel James
e3befdba7f
Unordered: Update comparison between unordered and ordered containers.
...
[SVN r74907]
2011-10-11 00:30:59 +00:00
Daniel James
0cf8de5222
Unordered: Fix documentation markup error.
...
[SVN r74846]
2011-10-09 11:54:10 +00:00
Daniel James
b6a6f530c0
Unordered: Only pair reference test where it's known to be okay.
...
[SVN r74845]
2011-10-09 11:53:38 +00:00
Daniel James
03245c80ff
Unordered: Turn off warnings as errors and debug libs.
...
I'm getting a warning from another library. I don't really need to check
debug libs anymore - that was for container_fwd which is now tested in
details.
[SVN r74840]
2011-10-09 07:56:28 +00:00
Daniel James
2775ae2f2e
Unordered: Correct fix for old gcc.
...
[SVN r74836]
2011-10-09 01:23:25 +00:00
Daniel James
8557a30592
Unordered: Fix dependent type.
...
[SVN r74832]
2011-10-09 00:47:08 +00:00
Daniel James
fd530b87f6
Unordered: Remove use of BOOST_PP_ENUM_SHIFTED.
...
Doesn't seem to work on Intel's preprocessor.
[SVN r74813]
2011-10-08 17:39:54 +00:00
Daniel James
674d635024
Unordered: Move has_member into nested struct for sun.
...
[SVN r74812]
2011-10-08 17:39:36 +00:00
Daniel James
f304e56818
Unordered: Stop using void_pointer.
...
Was breaking for allocators that don't have good enough support for
void_pointer. Which I suspect is pretty common.
[SVN r74800]
2011-10-08 12:17:27 +00:00
Daniel James
5a2bf64a65
Unordered: Just do member detection on older compilers.
...
[SVN r74799]
2011-10-08 12:17:09 +00:00
Daniel James
f1b78931d1
Unordered: More misc. cleanup.
...
Including removing node.hpp.
[SVN r74775]
2011-10-07 08:19:53 +00:00
Daniel James
3d7b6c64b5
Unordered: some more formatting + namespaces
...
[SVN r74767]
2011-10-06 21:31:25 +00:00
Daniel James
597d93537d
Unordered: More cleaning up.
...
Fix deprecated construct_impl and explicit namespaces in a few places.
[SVN r74766]
2011-10-06 21:06:35 +00:00
Daniel James
3a909c8747
Unordered: Better emplace_args implementation.
...
And some misc. cleanup.
[SVN r74750]
2011-10-06 08:03:25 +00:00
Daniel James
ad38ecf6d8
Unordered: Remove some std::cout debugging. Oops.
...
[SVN r74746]
2011-10-05 22:05:52 +00:00
Daniel James
dac1dc5837
Unordered: Reorganization to use void pointers and other things.
...
Helps allocators which can't use incomplete pointers, and avoid using
base pointers where that might not be possible. And some other
reorganization. Storing arguments to emplace in a structure when
variadic template parameters aren't available. Changed some of the odd
design for working with older compilers.
[SVN r74742]
2011-10-05 19:45:14 +00:00
Daniel James
c0aaf908c0
Unordered: Tweak member detection for sun.
...
Detect using a member pointer, rather than a member function pointer.
Sun seems to be happier with that.
[SVN r74605]
2011-09-28 23:50:27 +00:00
Daniel James
b1d782285c
Unordered: Remove void cast.
...
I don't think it's needed.
[SVN r74542]
2011-09-23 20:27:39 +00:00
Daniel James
b0620a46ff
Unordered: Don't use BOOST_UNORDERED_HAS_FUNCTION with Sun.
...
Something is causing the sun compiler to crash. I don't know if it's the
member detection or testing if the member if callable, so try disabling
the callable test to see if that works better.
[SVN r74541]
2011-09-23 20:27:22 +00:00
Daniel James
340c98d89a
Unordered: New member function detection.
...
Based on Ion's `has_member_function_callable_with`.
[SVN r74532]
2011-09-22 23:56:49 +00:00
Daniel James
78241de393
Unordered: at is in the standard.
...
[SVN r74531]
2011-09-22 23:56:28 +00:00
Daniel James
dbf7c9d6aa
Unordered: Note about backwards compatability in emplace.
...
[SVN r74383]
2011-09-15 08:22:29 +00:00
Daniel James
983ad956e0
Unordered: Change log note about new emplace.
...
[SVN r74379]
2011-09-14 21:06:38 +00:00
Daniel James
45273ea6a5
Unordered: Remove more parts of rationale made unnecessary by C++11.
...
[SVN r74378]
2011-09-14 21:05:53 +00:00
Daniel James
9b82dcde10
Unordered: Update equality documentation.
...
[SVN r74377]
2011-09-14 21:05:13 +00:00
Daniel James
b496bc3fa2
Unordered: fix swap documentation.
...
[SVN r74376]
2011-09-14 21:04:23 +00:00
Daniel James
f8abb9633a
Unordered: Revert [74315].
...
I checked it in due to some clumsy rebasing.
[SVN r74326]
2011-09-09 10:42:56 +00:00
Daniel James
76c37f7805
Unordered: Sunpro doesn't have nullary emplace().
...
[SVN r74319]
2011-09-08 21:11:16 +00:00
Daniel James
7d441864ec
Unordered: Remove use of allocator utilities.
...
[SVN r74317]
2011-09-08 21:10:39 +00:00
Daniel James
ccd895a356
Unordered: Extra check for vacpp's odd failure.
...
VACPP 11.0 appears to be detecting a move for nothing more than a
default initialised value.
[SVN r74316]
2011-09-08 21:10:18 +00:00
Daniel James
8ecdee5a93
Unordered: Try to fix vacpp's issue with select_on_container_copy_construction
...
[SVN r74315]
2011-09-08 21:09:56 +00:00
Daniel James
70c39ad5ea
Unordered: Revert [74236].
...
On vacpp `has_select_on_container_copy_construction` was incorrectly returning
positive for a non-const `select_on_container_copy_construction`. This resulted
in a compile error as it tried to call it for a const allocator. The workaround
seemed to have just made things worse so I'm reverting it. It's actually not
that bad a problem as a non-const `select_on_container_copy_construction` is
probably a mistake.
[SVN r74294]
2011-09-07 10:01:25 +00:00
Daniel James
96fc0fa3c2
Unordered: Try to fix vacpp's issue with select_on_container_copy_construction
...
[SVN r74236]
2011-09-05 08:06:17 +00:00
Daniel James
c101aec06c
Unordered: Use destroy workaround for allocator_traits.
...
[SVN r74235]
2011-09-04 19:49:11 +00:00
Daniel James
bd79d02049
Unordered: Remove unreachable code.
...
[SVN r74218]
2011-09-04 11:58:56 +00:00
Daniel James
0ea847a64e
Unordered: Documentation changes.
...
[SVN r74194]
2011-09-02 08:29:23 +00:00
Daniel James
965e25c989
Unordered: Try to fix issues with moving non-class types.
...
[SVN r74193]
2011-09-02 08:28:52 +00:00
Daniel James
a3ffd4a7c9
Unordered: Remove BOOST_DEDUCED_TYPENAME
...
[SVN r74192]
2011-09-02 08:28:19 +00:00
Daniel James
41b9b8d841
Unordered: Remove pair cast.
...
[SVN r74191]
2011-09-02 08:27:27 +00:00
Daniel James
26a47d33c1
Unordered: Use return type SFINAE, seems to be more portable.
...
[SVN r74182]
2011-09-01 08:26:36 +00:00
Daniel James
1154b5729a
Unordered: Deprecate variadic pair construction emulation.
...
[SVN r74181]
2011-08-31 22:57:57 +00:00
Daniel James
fd1aec2998
Unordered: Add option to use old equality implementation for backwards compatability.
...
[SVN r74180]
2011-08-31 22:23:01 +00:00
Daniel James
659b6fe8ba
Unordered: Another attempt at member detection.
...
Another stab in the dark. Doing SFINAE in the return type appears to
work well, apart for Visual C++ 8.0. Will have to see how the test
results go for some compilers.
[SVN r74173]
2011-08-30 22:02:27 +00:00
Daniel James
ceef4d6521
Unordered: Explicitly pick construct_impl overloads.
...
Still getting ambiguous call errors for some older compilers, so use SFINAE to
only enable a single overload for each arity.
[SVN r74171]
2011-08-30 22:01:54 +00:00
Daniel James
86b077b9a1
Unordered: Use quickbook 1.5
...
[SVN r74143]
2011-08-29 17:14:28 +00:00
Daniel James
28cdebe7a4
Unordered: Update erase reference.
...
[SVN r74142]
2011-08-29 17:14:09 +00:00
Daniel James
d4087f64d9
Unordered: Fix boostbook errors.
...
[SVN r74141]
2011-08-29 17:13:27 +00:00
Daniel James
4ec5a0eebd
Unordered: updating reference documentation.
...
[SVN r74137]
2011-08-29 15:23:32 +00:00
Daniel James
f58a3fc3eb
Unordered: Another breaking change.
...
[SVN r74136]
2011-08-29 15:22:00 +00:00
Daniel James
11562b3285
Unordered: Update docs since it's now based on C++11
...
[SVN r74135]
2011-08-29 15:21:04 +00:00
Daniel James
568fd1758d
Unordered: More info on C++11 compliance.
...
[SVN r74134]
2011-08-29 15:20:27 +00:00
Daniel James
f64b5ba3f8
Unordered: Account for cost of creating tuple.
...
[SVN r74133]
2011-08-29 15:19:40 +00:00
Daniel James
395c744d6f
Unordered: More portability changes.
...
[SVN r74122]
2011-08-29 11:10:09 +00:00
Daniel James
155077cba0
Unordered: Support piecewise pair construction.
...
Will need to deprecate the old variadic style pair construction, also
should look into extract_key, was written for compatibility with older
compilers that are no longer supported.
[SVN r74119]
2011-08-29 09:40:41 +00:00
Daniel James
4dcf34c264
Unordered: Restore at_tests.
...
[SVN r74108]
2011-08-28 15:43:08 +00:00
Daniel James
4bf3b1bfc5
Unordered: Support optional allocator methods.
...
Only for compilers with SFINAE expressions and recent versions of Visual
C++. Also fix Visual C++ 8, and use BOOST_UNORDERED_ prefix for all
macros.
[SVN r74106]
2011-08-28 15:36:58 +00:00
Daniel James
6bc99ac0c2
Unordered: Hopefully vacpp will like this more.
...
[SVN r74103]
2011-08-28 11:31:43 +00:00
Daniel James
09e856562a
Unordered: Try to avoid warning on sun.
...
[SVN r74102]
2011-08-28 11:31:23 +00:00
Daniel James
5dd13dbfb3
Unordered: Try to avoid std::size_t to double warnings.
...
Maybe I should use long double?
[SVN r74087]
2011-08-27 11:53:48 +00:00
Daniel James
9ae19a64d7
Unordered: Fix more calls to std::forward.
...
[SVN r74086]
2011-08-27 11:29:04 +00:00
Daniel James
bd13f2b1ad
Unordered: Fix some calls to std::forward.
...
[SVN r74074]
2011-08-26 15:28:56 +00:00
Daniel James
d09bbba6c1
Unordered: Missing limits header in tests.
...
[SVN r74073]
2011-08-26 15:24:47 +00:00
Daniel James
3f4d031c43
Unordered: Remove extra ';'.
...
[SVN r74072]
2011-08-26 15:24:16 +00:00
Daniel James
674b39243f
Unordered: More robust construct_impl.
...
[SVN r74068]
2011-08-26 08:12:08 +00:00
Daniel James
099a893678
Unordered: More portable allocator_traits.
...
[SVN r74067]
2011-08-26 08:11:46 +00:00
Daniel James
cfd52c8f38
Unordered: Fix compiler check in unnecessary_copy_tests.
...
[SVN r74066]
2011-08-26 08:11:12 +00:00
Daniel James
e295541dae
Unordered: Try to make VC++ 8 happy.
...
[SVN r73973]
2011-08-20 23:34:59 +00:00
Daniel James
785a6def3b
Unordered: Remove another use of BOOST_RV_REF for sun.
...
[SVN r73972]
2011-08-20 23:34:38 +00:00
Daniel James
53bdec8aab
Unordered: More unnecessary_copy_tests tweaks.
...
[SVN r73971]
2011-08-20 23:34:14 +00:00
Daniel James
5191897696
Unordered: Compliance TODO note
...
[SVN r73895]
2011-08-18 19:29:22 +00:00
Daniel James
2ecfa0e08c
Unordered: Fix unnecessary_copy_tests failures.
...
[SVN r73894]
2011-08-18 19:29:02 +00:00
Daniel James
c001139465
Unordered: detab
...
[SVN r73893]
2011-08-18 19:28:41 +00:00
Daniel James
e3353a445a
Unordered: Fix some test failures.
...
[SVN r73856]
2011-08-17 21:29:41 +00:00
Daniel James
ce779452ba
Unordered: Fix gcc error + warning.
...
[SVN r73839]
2011-08-17 07:43:43 +00:00
Daniel James
eb8b8295a1
Unordered: Fix an xml error in the docs.
...
[SVN r73830]
2011-08-16 22:19:00 +00:00
Daniel James
94c9c61142
Unordered: Document new changes and C++11 compliance.
...
[SVN r73829]
2011-08-16 22:18:09 +00:00
Daniel James
11e390bf42
Unordered: Use Boost.Move in minimal tests.
...
[SVN r73828]
2011-08-16 22:17:11 +00:00
Daniel James
a8fdf19c91
Unordered: Test types that are only destructible.
...
[SVN r73820]
2011-08-16 18:08:23 +00:00
Daniel James
08bca9a35f
Unordered: Support moving allocators.
...
[SVN r73805]
2011-08-15 21:34:01 +00:00
Daniel James
1db630d5c9
Unordered: Enable the better select_on_container_copy_construction detection for recent Visual C++.
...
[SVN r73799]
2011-08-15 20:24:12 +00:00
Daniel James
bbad921022
Unordered: Fix some portability issues in tests.
...
- Simplify mechanism for detecting traits of test allocators. There were
some portability issues, but rather than fix them I've just gone for a
simpler mechanism. Does mean that the relevant tests can't be run for
other allocators.
- Fix a couple of unnecessary_copy_tests, whose results were the wrong
way round.
- It appears that Visual C++ only implements RVO for implicitly defined
copy constructors in debug mode, so adjust a move_test to account for
the extra copies now that the copy constructors are explicitly
defined.
[SVN r73798]
2011-08-15 20:23:29 +00:00
Daniel James
f64cf03e1d
Unordered: Implement select_on_container_copy_construction support.
...
[SVN r73772]
2011-08-15 07:48:53 +00:00
Daniel James
559122f67a
Unordered: Small improvements for windows.
...
[SVN r73760]
2011-08-14 21:03:18 +00:00
Daniel James
431f2abfee
Unordered: Alternative member detection.
...
Hopefully the Sun compiler will like this.
[SVN r73757]
2011-08-14 18:53:50 +00:00
Daniel James
5f622027cd
Unordered: Implement allocator propagation on assignment.
...
It's pretty messy because I'm trying to avoid swapping allocators in
these cases. I'm also not sure of the exception requirements of
allocator swap and assignment.
[SVN r73756]
2011-08-14 18:53:29 +00:00
Daniel James
fa97494cc8
Unordered: Move some of the unordered implementation.
...
[SVN r73755]
2011-08-14 18:53:03 +00:00
Daniel James
f4d4975077
Unordered: Count instances in some tests.
...
[SVN r73754]
2011-08-14 18:52:43 +00:00
Daniel James
f030480e44
Unordered: detab.
...
[SVN r73753]
2011-08-14 18:52:20 +00:00
Daniel James
435c21c155
Unordered: Qualify calls to addressof.
...
Hopefully this will fix C++0x compilers. Although I don't have one at
hand to test.
[SVN r73690]
2011-08-12 06:26:25 +00:00
Daniel James
7438d7a02f
Unordered: Move around assignment stuff.
...
[SVN r73681]
2011-08-11 21:19:05 +00:00
Daniel James
0e5930b8dc
Unordred: Implement propagate_on_container_swap.
...
[SVN r73680]
2011-08-11 21:18:43 +00:00
Daniel James
eacca89d4e
Unordered: Starting to implement allocator propagation.
...
[SVN r73679]
2011-08-11 21:18:19 +00:00
Daniel James
99e6bef4ef
Unordered: Starting to support allocator_traits.
...
[SVN r73678]
2011-08-11 21:17:57 +00:00
Daniel James
3d5314b5f5
Unordered: Don't use BOOST_RV_REF with Sun compilers.
...
[SVN r73593]
2011-08-07 10:22:41 +00:00
Daniel James
f0517463a5
Unordered: Better std::forward/move configuration.
...
[SVN r73592]
2011-08-07 08:55:28 +00:00
Daniel James
c9e0fb9730
Unordered: Update unnecessary_copy_tests for Boost.Move.
...
Seems to be better in some cases. For example, better forwarding if
rvalue references are supported but variadic template parameters aren't.
Also can use `boost::move` when inserting.
Older versions of gcc still fail this test. They perform more moves than
expected. It might be a limitation of Boost.Move, or maybe just poor
copy optimization.
[SVN r73539]
2011-08-04 22:54:26 +00:00
Daniel James
d86a4b0c2f
Unordered: Use Boost.Move for emplace and insert.
...
[SVN r73520]
2011-08-03 23:52:37 +00:00
Daniel James
eced4266c2
Unordered: Copy and assign using Boost.Move.
...
[SVN r73503]
2011-08-03 08:34:33 +00:00
Daniel James
fc483e60bc
Unordered: Fix link to swap issue.
...
[SVN r73502]
2011-08-03 08:34:11 +00:00
Daniel James
910cd41c47
Unordered: Generate ref docs using php.
...
[SVN r73501]
2011-08-03 08:33:37 +00:00
Daniel James
b4e1d32e85
Unordered: detab.
...
[SVN r72906]
2011-07-04 21:55:40 +00:00
Daniel James
ff66f79721
Unordered: Import functions into boost namespace.
...
[SVN r72905]
2011-07-04 21:52:17 +00:00
Daniel James
8b610a6d34
Unordered: Work around for compilers which don't support template friend members.
...
[SVN r72523]
2011-06-09 19:48:34 +00:00
Daniel James
20e923ba0d
Unordered: Move the implementation into a namespace.
...
Although it typically won't prevent ADL, because of boost::hash.
[SVN r72391]
2011-06-04 16:17:07 +00:00
Daniel James
4777eaf367
Unordered: remove some dead, bad code.
...
[SVN r72390]
2011-06-04 16:15:27 +00:00
Daniel James
a40422fada
Unordered: remove use of the 'or' keyword.
...
[SVN r71602]
2011-04-29 11:03:29 +00:00
Daniel James
b1912055a9
Unordered: Fix some errors in the equality tests.
...
[SVN r71363]
2011-04-17 21:27:38 +00:00
Daniel James
e8714d79b2
Unordered: Implement C++0x equality.
...
[SVN r71354]
2011-04-17 16:23:25 +00:00
Daniel James
f8e2a917f9
Unordered: 2 phase lookup fix for clang.
...
[SVN r71352]
2011-04-17 14:27:08 +00:00
Daniel James
140e8852e8
Unordered: fix some gcc issues.
...
[SVN r71346]
2011-04-17 00:31:35 +00:00
Daniel James
547e141166
Unordered: Overhaul the implementation.
...
Store nodes in a single linked list, with hash values so that their
buckets can be found when needed. Iterators now only have to store a
pointer to the node and don't have to iterate over empty buckets to
reach the next node. This allows the container to meet the iterator
requirements - fixing the speed issues with `equal_range` and `erase`.
Also, define iterators in their own namespace, so that they don't
accidentally pull in detail functions via ADL.
I've simplified the code slightly by removing some of the special
cases for empty containers. Renamed a few things as well and other
minor changes that were made as I went along.
[SVN r71327]
2011-04-16 18:47:33 +00:00
Daniel James
d9c49a6cde
Don't require explicit conversion in pairs in unordered's insert tests.
...
In the draft standard the std::pair constructor from another pair is
only considered when overloading if both members are implicitly
constructible to their corresponding members. This breaks one of the
unordered tests which required an explicit conversion, so change it to
only require an implicit conversion.
[SVN r70028]
2011-03-16 21:34:08 +00:00
Daniel James
8ade57b9e3
Remove workaround for ancient gcc verisons.
...
[SVN r70027]
2011-03-16 21:33:41 +00:00
Daniel James
a4750fbdba
Make unnecessary_copy_tests a bit more lenient.
...
I'm not sure if those extra moves are avoidable, but I'll allow them for
now. They shouldn't hurt much.
[SVN r68446]
2011-01-25 20:15:27 +00:00
Daniel James
a33949a0a5
Add copy constructors and assignment operators when using rvalue references. Refs #5119 .
...
[SVN r68445]
2011-01-25 20:13:43 +00:00
Daniel James
4d57147c3d
Fix tabs and files without copyright.
...
[SVN r67612]
2011-01-03 12:43:34 +00:00
Daniel James
3d7abd9cbe
Avoid -Wconversion warnings in unordered & hash.
...
[SVN r67170]
2010-12-11 14:43:00 +00:00
Daniel James
5a81ca6ffe
Import boostbook/quickbook in unordered and hash docs.
...
[SVN r67091]
2010-12-07 20:45:08 +00:00
Daniel James
b9188caf7d
Fix [66556] - Remove clang workaround.
...
I accidentaly removed the good code and left the workaround in. Also, a
correction to the comment: I think bug was only in a unreleased version
of clang.
[SVN r66567]
2010-11-14 11:43:49 +00:00
Daniel James
df726c038f
Remove some 'always_show_run_output' flags.
...
[SVN r66566]
2010-11-14 11:42:58 +00:00
Daniel James
14e0e1afc2
Less use of the ampersand operator in unordered.
...
[SVN r66557]
2010-11-13 12:31:54 +00:00
Daniel James
2c1a8894cb
Remove clang workaround.
...
Clang from llvm 2.8 doesn't need it. Clang form llvm 2.7 isn't
supported.
[SVN r66556]
2010-11-13 12:30:45 +00:00
Daniel James
a49c76c69c
More comments describing the unordered internals.
...
And fix a couple of small mistakes in the existing comments.
[SVN r66555]
2010-11-13 12:30:06 +00:00
Daniel James
eb04f68351
Call forward declared functions from templates in unordered tests.
...
Borland is having some issues with the existing tests, since they call
inline functions before they're defined. It might be right to, although
all the other compilers are fine with it. But the test isn't really what
the forward headers are intended for. Try to make the tests better
represent the intent, and possibly work on Borland.
[SVN r66428]
2010-11-07 14:43:50 +00:00
Daniel James
77bd36d038
Declare inline functions as inline.
...
[SVN r66193]
2010-10-25 21:59:52 +00:00
Daniel James
1b85f812af
Missing copy_iterator methods.
...
[SVN r66137]
2010-10-21 20:34:39 +00:00
Daniel James
daad24388c
Fix iterator insert bug in unordered_set/unordered_map.
...
[SVN r66136]
2010-10-21 20:23:37 +00:00
Daniel James
0cbd02d3cc
Fix images in standalone unordered documentation.
...
[SVN r63451]
2010-06-30 12:05:36 +00:00
Daniel James
3a13ddb4a3
Don't use _GLIBCXX_DEBUG on darwin.
...
It isn't supported by Apple's gcc 4.2.
[SVN r63449]
2010-06-30 12:04:41 +00:00
Daniel James
7b272c85d5
Missing bracket.
...
[SVN r63392]
2010-06-27 16:58:48 +00:00
Daniel James
5edc45349f
Revert changes for sun 5.9.
...
Nobody seems to be running the tests now.
[SVN r62117]
2010-05-21 07:06:33 +00:00
Daniel James
dfaa61b666
Another inline.
...
[SVN r61872]
2010-05-09 07:24:47 +00:00
Daniel James
076e195cac
Define several methods inline.
...
Sun 5.9 was having some issues.
[SVN r61831]
2010-05-06 20:13:25 +00:00
Daniel James
71a8e56ae3
Move equivalent and unique hash tables into their own headers.
...
[SVN r61830]
2010-05-06 20:12:40 +00:00
Daniel James
ef79fea0b7
The clang workaround broke some compilers, so only use it for clang.
...
[SVN r61529]
2010-04-24 12:59:35 +00:00
Daniel James
ea33b5d134
Fix clang warnings in unordered tests.
...
[SVN r61505]
2010-04-23 07:26:43 +00:00
Daniel James
5bab4d4360
Work around friend bug in clang.
...
[SVN r61504]
2010-04-23 07:25:53 +00:00
Daniel James
10e24f93c4
Unordered/hash release notes.
...
[SVN r61356]
2010-04-18 13:20:45 +00:00
Daniel James
00cebc3dfb
Use boost::throw_exception in unordered.
...
[SVN r60983]
2010-03-31 21:42:08 +00:00
Daniel James
ee034e23bb
Add quick_erase to the unordered containers. Refs #3966 .
...
[SVN r60754]
2010-03-22 00:42:07 +00:00
Daniel James
1d02663275
Try to avoid a warning.
...
[SVN r59956]
2010-02-26 20:50:21 +00:00
Daniel James
e594f1eda7
Remove deprecated macros for hash and unordered's tests.
...
[SVN r59708]
2010-02-16 22:33:10 +00:00
Daniel James
1bcb5f8b6f
Take advantage of the simplified parameters.
...
[SVN r59707]
2010-02-16 22:32:49 +00:00
Daniel James
06f63fdc0d
Stop using the deprecated BOOST_HAS_ macros in unordered and hash.
...
[SVN r59697]
2010-02-15 23:01:06 +00:00
Daniel James
7efcf9ccff
Set length of primes inside template on Sun C++. Refs #3854
...
[SVN r59200]
2010-01-21 18:01:53 +00:00
Daniel James
6649b4df3c
Update changelogs and slightly improved reference documentation for new release.
...
[SVN r58805]
2010-01-08 06:43:57 +00:00
Daniel James
71096f4d26
Formatting changes, mostly to fit within 80 characters.
...
Also, some C casts converted to static_cast.
[SVN r58692]
2010-01-04 22:49:39 +00:00
Daniel James
0f0161a5a2
Add codegear compatibility to the changes.
...
[SVN r58406]
2009-12-15 22:53:54 +00:00
Daniel James
b99382b551
Add templated find overload for compatible keys.
...
[SVN r58405]
2009-12-15 22:53:33 +00:00
Daniel James
493f905598
Fix the return type of find in the unordered reference documentation.
...
[SVN r58404]
2009-12-15 22:53:08 +00:00
Daniel James
4e6292b439
Implement an alternative erase function that doesn't return an iterator.
...
Ref #3693
[SVN r58403]
2009-12-15 22:52:52 +00:00
Daniel James
2f0a94bcfd
Add missing std:: qualifier to ptrdiff_t. Refs #3773 .
...
[SVN r58402]
2009-12-15 22:42:04 +00:00
Daniel James
618a51df13
Turn off warnings as errors on gcc/darwin because the integer library currently causes some warnings.
...
[SVN r58394]
2009-12-15 13:16:32 +00:00
Daniel James
18a5010436
Remove use of iterator_adaptor in unordered tests.
...
[SVN r58144]
2009-12-04 19:44:34 +00:00
Daniel James
c8b893cb77
Workaround codegear ICE.
...
It seems that the problem is calling sizeof on a dependent type when the
containers have only been used by reference. So by putting in these
dummy structures with the containers as members, it helps the compiler
instantiate the class to the level where sizeof works. I hope.
[SVN r58130]
2009-12-04 00:51:50 +00:00
Daniel James
a1252fcc0e
Use consistent names for template parameters.
...
I'm trying to fix the codegear ICEs, but it's hard to tell the cause.
Since the error happens operator== I suspect it's either to do
with defining friend functions with different template names or
something to do with friend functions in general. This is the first stab
in the dark at fixing this.
[SVN r58062]
2009-11-30 18:25:26 +00:00
Daniel James
ef67d9ae12
Document the unordered changes.
...
[SVN r58004]
2009-11-28 11:46:24 +00:00
Daniel James
3e638049ec
Try to support incomplete types for Sun - at the expense of zero argument emplace.
...
[SVN r58002]
2009-11-28 11:46:05 +00:00
Daniel James
7f59e8e058
Better testing of incomplete types.
...
[SVN r57975]
2009-11-27 19:43:06 +00:00
Daniel James
7023460394
Suppress a warning that's in the windows mobile system headers.
...
[SVN r57963]
2009-11-26 23:15:30 +00:00
Daniel James
0dcf1b5cd2
Fix the version check when suppressing warnings.
...
[SVN r57962]
2009-11-26 23:14:53 +00:00
Daniel James
7b2c5189b3
Suppress some warnings on visual c++ 7.1.
...
[SVN r57921]
2009-11-25 09:14:16 +00:00
Daniel James
d3fe62a646
Try to avoid an odd warning from Visual C++
...
[SVN r57919]
2009-11-25 09:09:25 +00:00
Daniel James
1f17294cd3
Use remove_const again.
...
[SVN r57840]
2009-11-21 20:37:50 +00:00
Daniel James
3882a61065
Inspect fixes.
...
[SVN r57838]
2009-11-21 19:40:28 +00:00
Daniel James
df72c4886f
Support incomplete template parameters to unordered containers.
...
[SVN r57798]
2009-11-20 08:03:26 +00:00
Daniel James
26c72f9860
Use 'E' for key extractor, freeing 'K' for key.
...
[SVN r57797]
2009-11-20 08:02:48 +00:00
Daniel James
55957bbab5
Some more warning fixes for Visual C++ 7.1
...
[SVN r57719]
2009-11-16 23:56:37 +00:00
Daniel James
ab843eb587
Fix a warning on Visual C++ 7.1. Although, I don't think I'm going to be warning free on the compiler.
...
[SVN r57617]
2009-11-12 21:36:27 +00:00
Daniel James
4438b8e017
Fix a warning that only shows up in release builds.
...
[SVN r57556]
2009-11-10 20:07:50 +00:00
Daniel James
5747836754
Change unordered move tests to be more lenient on compilers without NRVO. Will probably need to reintroduce some of the failure markup later.
...
[SVN r57550]
2009-11-10 18:17:53 +00:00
Daniel James
ba5c383877
Stricter warnings for unordered and hash.
...
There are still warnings in hash_complex_test.
[SVN r57537]
2009-11-10 08:15:55 +00:00
Daniel James
b4f08db391
Remove 'grouped' from hash_table as it isn't used and is a bit confusing.
...
[SVN r57153]
2009-10-25 10:55:27 +00:00
Daniel James
060acb3f25
Slightly rearrange the unordered container headers so that prev_prime is defined before it's used.
...
[SVN r57152]
2009-10-25 10:55:08 +00:00
Daniel James
8727de1a1b
Remove insert empty initializer lists, as there's a bug in gcc.
...
[SVN r57151]
2009-10-25 10:54:53 +00:00
Daniel James
8cde8d1252
Fix the intel strict flag.
...
[SVN r57150]
2009-10-25 10:54:28 +00:00
Daniel James
6bac25221a
Fix unordered for intel strict.
...
[SVN r57139]
2009-10-24 17:53:03 +00:00
Daniel James
5bedbde746
Update the intel compile flags.
...
[SVN r57126]
2009-10-24 11:56:30 +00:00
Daniel James
2fdd33381c
Fix allocator for construct from initializer list.
...
[SVN r57006]
2009-10-19 19:32:09 +00:00
Daniel James
8d4b503e56
Use normal emplace implementation for emplace_hint and insert with hint.
...
There's a bug in the emplace_hint implementation for unordered
containers with equivalent keys. Since my tests missed it, I'm just
going to use the normal emplace implementation until I write better
tests.
[SVN r57005]
2009-10-19 19:24:33 +00:00
Daniel James
6c24cccf96
Add release notes for unordered.
...
[SVN r56988]
2009-10-18 20:18:28 +00:00
Troy D. Straszheim
51fdfa7ac7
rm cmake from trunk. I'm not entirely sure this is necessary to satisfy the inspect script, but I'm not taking any chances, and it is easy to put back
...
[SVN r56942]
2009-10-17 02:07:38 +00:00
Daniel James
3dff89c240
Correct macro checks for initializer lists.
...
[SVN r56844]
2009-10-14 20:30:48 +00:00
Daniel James
4e07c94502
Copy the unordered and hash CMake files from release.
...
[SVN r56704]
2009-10-10 15:09:02 +00:00
Daniel James
854dc0b353
Various inspect fixes.
...
[SVN r56603]
2009-10-05 21:29:39 +00:00
Daniel James
373791d0b2
Detab.
...
[SVN r56571]
2009-10-04 10:37:56 +00:00
Daniel James
fe3d612fe0
Clean up some unordered TODOs.
...
[SVN r56570]
2009-10-04 10:37:36 +00:00
Daniel James
ae0c97a77a
Make sure inserting from a range of types other than the value type is better tested.
...
[SVN r56562]
2009-10-03 16:42:20 +00:00
Daniel James
788a3661a2
Update the unordered rationale.
...
[SVN r56561]
2009-10-03 16:42:00 +00:00
Daniel James
1e24f85fbc
Insert using initializer lists.
...
[SVN r56560]
2009-10-03 16:41:32 +00:00
Daniel James
4601f5c51f
Stricter insert exception tests.
...
[SVN r56559]
2009-10-03 16:41:11 +00:00
Daniel James
55eafdf0ee
Update reference docs to latest version of draft standard and fill in
...
some missing details.
[SVN r56558]
2009-10-03 16:40:53 +00:00
Daniel James
63e04cfb60
Fix the iterator category.
...
[SVN r56557]
2009-10-03 16:40:26 +00:00
Daniel James
d0a3efab6a
Just remove the test since the test itself doesn't work on most compilers.
...
[SVN r56468]
2009-09-29 07:46:44 +00:00
Daniel James
2b8680d2c4
Remove the optimization for std::pair with a key reference. It'll be too much hassle to get a very unusual use case to work on all compilers.
...
[SVN r56461]
2009-09-28 23:06:03 +00:00
Daniel James
31cd8f4e16
Try supporting reference parameters in pairs. Probably not required.
...
[SVN r56441]
2009-09-27 19:12:04 +00:00
Daniel James
b75b7dd5ac
Remove temporary test.
...
[SVN r56374]
2009-09-24 20:42:19 +00:00
Daniel James
437a35feaa
Remove the emplace_hint implementation for unique containers as it isn't really used and seems to be causing sun 5.7 problems.
...
[SVN r56363]
2009-09-22 22:39:17 +00:00
Daniel James
f76af2d0c8
Another std::max.
...
[SVN r56362]
2009-09-22 22:39:00 +00:00
Daniel James
efbf13685e
Use std::max.
...
[SVN r56349]
2009-09-21 21:18:21 +00:00
Daniel James
08d533cb88
Fix a bug that was causing unnecessary rehahes.
...
[SVN r56348]
2009-09-21 21:18:01 +00:00
Daniel James
ff6e457651
Fix bug where container was reducing the number of buckets.
...
[SVN r56347]
2009-09-21 21:17:40 +00:00
Daniel James
965c2ae89c
Slightly more consistent variable names. In detail 'n' is now always a node pointer.
...
[SVN r56346]
2009-09-21 21:17:19 +00:00
Daniel James
78b078f41d
Since all the compilers support out of line template members use them
...
and lots of other things.
[SVN r56329]
2009-09-20 21:55:15 +00:00
Daniel James
491fa330f6
Move size_ and cached_begin_bucket_ into table, rename hash_table_manager hash_buckets.
...
[SVN r56010]
2009-09-04 07:03:04 +00:00
Daniel James
9ec148aec5
Fix link to n2691.
...
[SVN r56009]
2009-09-04 07:02:28 +00:00
Daniel James
7598d0d49b
Add a small test to see if the tested compilers support out of line template methods.
...
[SVN r55992]
2009-09-03 07:37:30 +00:00
Daniel James
6a8506d959
Remove some old Visual C++ workarounds.
...
[SVN r55991]
2009-09-03 07:37:14 +00:00
Daniel James
7fe53ef5a3
Combine hash_structure and hash_table_manager.
...
[SVN r55990]
2009-09-03 07:36:21 +00:00
Daniel James
1743ed118d
Remove 'static' from next_node and node_count. Will hopefully make vacpp happy.
...
[SVN r55922]
2009-08-31 15:33:49 +00:00
Daniel James
848b73f99f
Remove a few unused parameters.
...
[SVN r55921]
2009-08-31 15:33:28 +00:00
Daniel James
ccc88ecf0a
Remove unnecessary BOOST_DEDUCED_TYPENAMEs
...
[SVN r55902]
2009-08-31 10:39:40 +00:00
Daniel James
c40cb50fe5
Detab.
...
[SVN r55901]
2009-08-31 10:39:25 +00:00
Daniel James
386d9f28d7
Initial checkin of new version of Boost.Unordered.
...
- More template use, less preprocessor use.
- Removed some of the Visual C++ 6 workarounds.
- Reduced memory use of the main object.
- Split into smaller headers.
[SVN r55878]
2009-08-30 16:42:28 +00:00
Daniel James
4350660626
Remove allocator_constructor since it's never used.
...
[SVN r55877]
2009-08-30 16:33:42 +00:00
Daniel James
1632522967
Update the reference documentation to mention that emplace is now emulated.
...
[SVN r55185]
2009-07-26 19:00:40 +00:00
Daniel James
178154082f
Some extra changelog notes.
...
[SVN r55184]
2009-07-26 18:59:33 +00:00
Troy D. Straszheim
d5dac9bdae
Copyrights on CMakeLists.txt to keep them from clogging up the inspect
...
reports. This is essentially the same commit as r55095 on the release
branch.
[SVN r55159]
2009-07-26 00:49:56 +00:00
Daniel James
cf363355df
Try to work around an odd Visual C++ 8 bug.
...
[SVN r55138]
2009-07-23 22:17:20 +00:00
Daniel James
ca018bfba6
Remove the emulation of single argument C++0x std::pair constructor.
...
[SVN r55132]
2009-07-23 17:53:59 +00:00
Daniel James
3c48fa3818
Adjust the unordered defaults so that emplace takes more parameters and less buckets are created by default.
...
[SVN r55100]
2009-07-22 22:38:08 +00:00
Daniel James
7bc588d8df
Fix the insert tests when there is a small number of buckets.
...
[SVN r55099]
2009-07-22 22:37:52 +00:00
Daniel James
6d1aece43a
Add constructors to the methods for controlling bucket size in unordered containers.
...
[SVN r54914]
2009-07-12 18:03:35 +00:00
Daniel James
7e1dbc4cb7
Fix the unordered_map declaration in the tutorial. Fixes #3119 .
...
[SVN r53552]
2009-06-01 19:22:27 +00:00
Daniel James
2b09a34467
Get the type of the initializer_list right.
...
[SVN r53550]
2009-06-01 19:17:49 +00:00
Daniel James
78ea3024b5
Fix tests for when the library has support for initializer lists but the compiler doesn't.
...
[SVN r53525]
2009-06-01 06:50:37 +00:00
Daniel James
cec1891586
Disable incorrect Visual C++ 64-bit warnings. Ref #3082 .
...
[SVN r53505]
2009-05-31 15:50:56 +00:00
Daniel James
6d8ce11934
Remove a couple of old uses of BOOST_NO_INITIALIZER_LISTS.
...
[SVN r53367]
2009-05-28 22:06:42 +00:00
Daniel James
b83a73ab40
Remove an unused function.
...
[SVN r53318]
2009-05-27 18:32:38 +00:00
Daniel James
caa0b7cdf6
Fix a change accidentally included in the last commit.
...
[SVN r53317]
2009-05-27 18:32:22 +00:00
Daniel James
46caec7d77
Some workarounds for old versions of Borland.
...
[SVN r53316]
2009-05-27 18:19:32 +00:00
Daniel James
04234cecee
Use lightweight_test for unordered.
...
[SVN r53314]
2009-05-27 17:44:09 +00:00
Daniel James
84ff0c3227
Remove obsolete comment.
...
[SVN r53312]
2009-05-27 17:43:22 +00:00
Daniel James
35a3894a88
Missing changelog entry.
...
[SVN r53311]
2009-05-27 17:42:01 +00:00
Daniel James
bde5df043c
Unordered change log for explicit destructors.
...
[SVN r53256]
2009-05-25 19:45:23 +00:00
Daniel James
8f70ddf4ef
Unordered change log.
...
[SVN r53255]
2009-05-25 19:45:06 +00:00
Daniel James
cfc134b871
Add explicit destructors to the unordered containers. Refs #2908 .
...
Isn't really needed but it doesn't hurt.
[SVN r53253]
2009-05-25 19:14:07 +00:00
Daniel James
20c9360528
Better configuration for boost.unordered.
...
[SVN r53127]
2009-05-20 06:43:38 +00:00
Daniel James
09b239ed28
Merge emplace support for sandbox - but without move support.
...
[SVN r52885]
2009-05-10 21:25:09 +00:00
Daniel James
294d58d2fe
Cherrypick some unordered container changes from sandbox. Not including
...
anything which depends on the new move library.
------------------------------------------------------------------------
r52746 | danieljames | 2009-05-03 11:12:30 +0100 (Sun, 03 May 2009) | 1 line
Merge latest unordered container changes.
------------------------------------------------------------------------
r52747 | danieljames | 2009-05-03 11:15:35 +0100 (Sun, 03 May 2009) | 4 lines
Put the C++0x emplace implementations before the non-C++0x versions.
I'm going to change the non-C++0x to be macro heavy emulations of the
C++0x versions, so this will put the readable version first.
------------------------------------------------------------------------
r52748 | danieljames | 2009-05-03 11:15:44 +0100 (Sun, 03 May 2009) | 1 line
Refactor the unordered implementation a tad, to make implementing emplace less painful.
------------------------------------------------------------------------
[SVN r52884]
2009-05-10 21:24:41 +00:00
Daniel James
3e70155100
Use a preprocessor sequence for the primes.
...
This feels like overkill but it seems to be the most reliable way to ensure
that the length is correct. I obviously can't be trusted to get it right, and
the template hack seems to prevent Boost.Range from working.
[SVN r52711]
2009-05-01 20:50:32 +00:00
Daniel James
ce379f7bb5
Fix the prime number list length in unordered.
...
[SVN r52674]
2009-04-30 05:10:57 +00:00
Daniel James
f8e1ec8d2b
Revert changes to unordered, as the test fails on most compilers.
...
[SVN r52673]
2009-04-30 05:08:40 +00:00
Daniel James
24091f8bd8
Don't test prime_list::length on Visual C++.
...
Checking the array size doesn't seem to work on it.
[SVN r52669]
2009-04-29 21:43:41 +00:00
Daniel James
4c3c18467c
Fix the length of the prime number list. Refs #2975
...
[SVN r52658]
2009-04-29 10:05:17 +00:00
Daniel James
3f0e2b478b
Add stream output to the count test helper for unordered.
...
[SVN r52397]
2009-04-14 17:51:34 +00:00
Daniel James
ac2409627a
Use emplace instead of insert in the backend as it's more appropriate.
...
[SVN r52394]
2009-04-14 17:23:51 +00:00
Daniel James
a07e4c5810
Implement full extract_key for compilers without SFINAE and variadic
...
templates.
[SVN r52393]
2009-04-14 17:23:37 +00:00
Daniel James
5a86d08271
Note change to operator[] in the unordered release notes.
...
[SVN r52350]
2009-04-12 10:50:57 +00:00
Daniel James
4ac0a12a83
Avoid an unnecessary copy in 'operator[]'
...
[SVN r52224]
2009-04-06 22:51:36 +00:00
Daniel James
290c7566ff
Changelog for unordered and hash.
...
[SVN r52084]
2009-03-31 19:43:58 +00:00
Daniel James
6ccc68b15c
Give up and use another macro to destruct values.
...
[SVN r51995]
2009-03-26 21:09:51 +00:00
Daniel James
188bcafdec
Try to destruct values in a way that all compilers might like.
...
[SVN r51983]
2009-03-26 07:00:46 +00:00
Daniel James
3a8739cd60
Revert [51409]
...
It isn't working on Borland.
[SVN r51982]
2009-03-26 07:00:21 +00:00
Daniel James
2bc986ecbc
Use paragraphs inside purpose tags.
...
[SVN r51802]
2009-03-16 20:21:05 +00:00
Daniel James
638accbec4
Update copyright dates in hash and unordered.
...
[SVN r51667]
2009-03-09 20:56:23 +00:00
Daniel James
d8fb4f4c38
Detab.
...
[SVN r51644]
2009-03-08 09:44:51 +00:00
Daniel James
3e55934381
Make the sort stable.
...
Doesn't really matter, but it might as well be.
[SVN r51505]
2009-03-01 14:15:39 +00:00
Daniel James
40a89ac649
Add missing return for operator=.
...
[SVN r51504]
2009-03-01 14:15:09 +00:00
Daniel James
d442f20bf8
Move some of the data structure classes out of hash table data.
...
[SVN r51409]
2009-02-22 23:50:20 +00:00
Daniel James
d36fc98c15
Make copy_buckets and move_buckets member functions - so that calling them is a bit simpler.
...
[SVN r51408]
2009-02-22 23:50:04 +00:00
John Maddock
700c4717d6
Add PDF generation options to fix external links to point to the web site.
...
Added a few more Boostbook based libs that were missed first time around.
Fixed PDF naming issues.
[SVN r51284]
2009-02-17 10:05:58 +00:00
Daniel James
1e73578ab6
Don't copy images for the standalone hash and unordered documentation, was only
...
really required before the libraries were integrated into boost.
[SVN r51263]
2009-02-15 19:32:19 +00:00
Daniel James
971224a282
Use the new 'boost:' links for the hash, unordered and quickbook documentation.
...
[SVN r51262]
2009-02-15 19:32:04 +00:00
John Maddock
acce19ce43
Add Jamfile to build PDF versions of all the docs.
...
Tweaked some existing Jamfiles so that PDF build finds all the necessary image files etc.
Tweaked fo.xsl to provide more options by default, and improve formatting.
[SVN r51104]
2009-02-08 16:59:14 +00:00
Daniel James
77021c5bbb
Remove a tab.
...
[SVN r50452]
2009-01-03 23:26:00 +00:00
Daniel James
fe3873b28f
Add support for initializer lists to config and the unordered containers.
...
[SVN r50118]
2008-12-04 21:30:19 +00:00
Daniel James
c1e9a6ac59
Workaround another in-place destruction.
...
[SVN r50029]
2008-11-29 21:47:55 +00:00
Daniel James
c2425106ea
Wild stab at getting destruction working on more compilers.
...
[SVN r49955]
2008-11-27 11:42:13 +00:00
Daniel James
c8e7874534
Use aligned storage for the value.
...
[SVN r49927]
2008-11-24 23:15:55 +00:00
Daniel James
601daa0e5d
Use a larger prime number list. Fixes #1710
...
[SVN r49926]
2008-11-24 22:56:04 +00:00
Daniel James
d022cc48ad
Document operator==/operator!= as undefined if the equality predicates aren't equivalent. Fixes #2237 .
...
[SVN r49925]
2008-11-24 22:55:47 +00:00
Daniel James
527a72860d
Extra tests for equality with different hash functions.
...
[SVN r49924]
2008-11-24 22:55:14 +00:00
Daniel James
f0bb74a530
Use the new swap library.
...
[SVN r49770]
2008-11-15 13:07:29 +00:00
Daniel James
b75f06d935
Use pragmas to suppress a Visual C++ warning.
...
[SVN r49756]
2008-11-14 16:11:16 +00:00
Daniel James
e2d1d75955
Explicitly specify the template parameters in the unordered container friend, in order to avoid some warnings.
...
[SVN r49735]
2008-11-14 12:51:00 +00:00
Michael A. Jackson
80dc7b5e6a
Updating dependency information for modularized libraries.
...
[SVN r49628]
2008-11-07 17:05:27 +00:00
Michael A. Jackson
1f4d8e7c21
Updating CMake files to latest trunk. Added dependency information for regression tests and a few new macros for internal use.
...
[SVN r49627]
2008-11-07 17:02:56 +00:00
Michael A. Jackson
366c09f199
Continuing merge of CMake build system files into trunk with the encouragement of Doug Gregor
...
[SVN r49510]
2008-11-01 13:15:41 +00:00
John Maddock
d98f72c4e1
Change includes of <cmath> to <boost/config/no_tr1/config.hpp>.
...
Previously if Boost.TR1 was in the include path then including <cmath> pulls in all the new TR1 math functions, which in turn also requires linking to an external library. With auto-linking support this requires that library to have been built and be present in the library search path, even if the actual library under use is header only.
Fixes #2392 .
[SVN r49254]
2008-10-10 16:10:00 +00:00
Daniel James
e6417fe652
Update unordered changelog.
...
[SVN r48853]
2008-09-18 11:23:12 +00:00
Daniel James
f5d52cc9b2
Move the unordered headers into the unordered directory.
...
[SVN r48803]
2008-09-16 21:49:41 +00:00
Daniel James
62427c8287
Forward headers for the unordered containers.
...
[SVN r48802]
2008-09-16 21:45:53 +00:00
Daniel James
ab588fe872
Fix a workaround macro.
...
[SVN r48791]
2008-09-15 21:48:46 +00:00
Daniel James
fe1385ab34
More recent version of the working draft.
...
[SVN r48082]
2008-08-11 07:53:05 +00:00
Daniel James
d6f513be52
Rename 'emplace' with hint to 'emplace_hint'.
...
[SVN r48081]
2008-08-11 07:52:37 +00:00
Daniel James
d8fa4cef60
Fix a link and a header.
...
[SVN r47881]
2008-07-30 09:44:26 +00:00
Daniel James
506f478ec7
Fix a typo.
...
[SVN r47813]
2008-07-25 21:25:58 +00:00
Daniel James
f2c420e289
Remove some old information that's no longer true.
...
[SVN r47750]
2008-07-24 10:14:15 +00:00
Daniel James
eae2a90463
Remove a mention of the hash functions which I missed before.
...
[SVN r47522]
2008-07-17 23:08:32 +00:00
Daniel James
4305d10264
On second thoughts, I'll just completely remove hash_value for ordered
...
containers. It's low quality and not very generic (it uses boost::hash for
mapped values). Should be a painless change.
[SVN r47465]
2008-07-15 22:03:15 +00:00
Daniel James
d5b38b01fc
Better hash function for unordered containers. Still a bit rubbish.
...
[SVN r47463]
2008-07-15 21:26:54 +00:00
Daniel James
c49dbd782d
Update the implementation details.
...
[SVN r47403]
2008-07-13 20:07:45 +00:00
Daniel James
c7bde21be7
Note that emplace is only available on a few compilers.
...
[SVN r47402]
2008-07-13 19:42:56 +00:00
Daniel James
d5fdc0b47e
Update the docs for the new location of FNV-1.
...
[SVN r47146]
2008-07-06 21:29:47 +00:00
Daniel James
c3d97bd613
I've only got one hash function for release, so no need for its own directory.
...
[SVN r47144]
2008-07-06 21:07:31 +00:00
Daniel James
2960390f79
Clean up the FNV-1 comments.
...
[SVN r47143]
2008-07-06 21:06:52 +00:00
Daniel James
f723f857e4
'Bias' should be 'basis'.
...
[SVN r47132]
2008-07-06 12:41:09 +00:00
Daniel James
d66936a640
Require explicit conversion from allocators.
...
(Not what it says in the draft standard, but I think that might be a defect).
[SVN r47085]
2008-07-04 22:57:20 +00:00
Daniel James
3640e1e96c
Workaround for some template syntax not supported in old versions of Visual C++ 6.5
...
[SVN r47040]
2008-07-03 14:34:56 +00:00
Daniel James
ec1e809fc3
Extract the hash and equality functions from hash_table_data_*.
...
As these are extensions and add extra requirements to the container elements,
they shouldn't be part of hash_table_data_* so that they won't get instantiated
if an unordered container is explicitly instantiated.
Merged revisions 46594-46604 via svnmerge from
https://svn.boost.org/svn/boost/branches/unordered/trunk
[SVN r46607]
2008-06-22 13:54:45 +00:00
Daniel James
8868fa4687
Merge inspect fixes for the unordered library.
...
Merged revisions 46470-46592 via svnmerge from
https://svn.boost.org/svn/boost/branches/unordered/trunk
................
r46589 | danieljames | 2008-06-21 21:37:42 +0100 (Sat, 21 Jun 2008) | 2 lines
Fix some inspect errors (tabs and missing copyright/license).
................
r46591 | danieljames | 2008-06-21 21:47:51 +0100 (Sat, 21 Jun 2008) | 1 line
Move memory.hpp into the helpers subdirectory.
................
r46592 | danieljames | 2008-06-21 22:08:53 +0100 (Sat, 21 Jun 2008) | 1 line
Prevent inspect errors for unnamed namespaces in some of the test header files.
................
[SVN r46594]
2008-06-21 22:02:15 +00:00
Daniel James
ebd75b4010
Get the test to pass when pair's default constructor creates two instances of
...
the member classes.
With some standard libraries I was getting two copies of the object after
creating a default pair, probably because it was creating an instance for its
default parameter. So only test after creating the pair object - since it isn't
our concern how many instances that creates.
[SVN r46587]
2008-06-21 19:58:39 +00:00
Daniel James
9bd3f498a7
Define unordered containers' friend functions outside of the class.
...
On some compilers, friend functions are being instantiated when the main class
is explicitly instantiated. This is slightly problematic because the equality
functions (which are an extension) put extra requirements on the types used. So
I'm going to try defining the functions outside of the class, in the hope that
they won't get instantiated. If someone wants non-member functions to be
instantiated, I think it's reasonable to expect them to explicitly instantiate
them, especially as compilers don't seem to be consistent about this.
[SVN r46579]
2008-06-21 15:32:11 +00:00
Daniel James
659a014976
Fix in an error in the unordered containers' emulated move constructors. These
...
aren't actually used, so I could probalby just remove 'move_from' for now (it's
used in the full move library).
[SVN r46410]
2008-06-15 17:03:37 +00:00
Daniel James
885574e1bf
Fix typo. Thanks to Thorsten.
...
Merged revisions 46112 via svnmerge from
https://svn.boost.org/svn/boost/branches/unordered/trunk
........
r46112 | danieljames | 2008-06-04 13:34:29 +0100 (Wed, 04 Jun 2008) | 1 line
Fix copy and paste error in the max_load_factor documentation.
........
[SVN r46340]
2008-06-11 22:06:52 +00:00