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
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
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
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
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
7d441864ec
Unordered: Remove use of allocator utilities.
...
[SVN r74317]
2011-09-08 21:10:39 +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
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
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
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