Commit Graph

163 Commits

Author SHA1 Message Date
Eric Niebler
50525d7fcc merged from trunk
[SVN r47983]
2008-08-05 05:39:57 +00:00
Eric Niebler
c07234dd7c Merged revisions 44452,44472-44484,44486-44493,44495-44497,44499,44506-44507 via svnmerge from
https://svn.boost.org/svn/boost/trunk

................
  r44452 | johnmaddock | 2008-04-16 04:57:29 -0700 (Wed, 16 Apr 2008) | 1 line
  
  Reinstated real_cast to that STLPort tests can pass.
................
  r44472 | emildotchevski | 2008-04-16 11:24:17 -0700 (Wed, 16 Apr 2008) | 1 line
  
  Added #define NOMINMAX to preserve standard behavior of std::min and std::max. Is including <windows.h> here necessary?
................
  r44473 | emildotchevski | 2008-04-16 11:36:30 -0700 (Wed, 16 Apr 2008) | 1 line
  
  Reverting previous change... #define NOMINMAX isn't a good idea either.
................
  r44474 | nasonov | 2008-04-16 14:13:25 -0700 (Wed, 16 Apr 2008) | 1 line
  
  Use make_unsigned and get rid of gcc warnings when -DBOOST_LEXICAL_CAST_ASSUME_C_LOCALE
................
  r44475 | hkaiser | 2008-04-16 15:50:47 -0700 (Wed, 16 Apr 2008) | 1 line
  
  Spirit V2: started to address regression test failures
................
  r44476 | emildotchevski | 2008-04-16 15:55:19 -0700 (Wed, 16 Apr 2008) | 1 line
  
  minor documentation fixes.
................
  r44477 | hkaiser | 2008-04-16 15:56:15 -0700 (Wed, 16 Apr 2008) | 1 line
  
  Wave: fixed a newly introduced compilation error specific to certain platforms.
................
  r44478 | hkaiser | 2008-04-16 16:17:24 -0700 (Wed, 16 Apr 2008) | 1 line
  
  Spirit V2: Fixed more regression problems.
................
  r44479 | hkaiser | 2008-04-16 16:18:18 -0700 (Wed, 16 Apr 2008) | 1 line
  
  Wave: minor edits...
................
  r44480 | jurko | 2008-04-16 17:20:33 -0700 (Wed, 16 Apr 2008) | 1 line
  
  Added a workaround for a compilation failure when including some Boost Serialization headers before some Boost Pool headers using MSVC 7.1 or 8.0. Source of the problem is a compiler bug fixed in MSVC 9.0 and workaround consists of referencing some Windows API identifiers using their fully qualified names. Added a related regression test for the Boost Pool library. See the test code comments for more detailed information on the bug.
................
  r44481 | jurko | 2008-04-16 17:27:30 -0700 (Wed, 16 Apr 2008) | 1 line
  
  Corrected the documentation related to installing new internal property types.
................
  r44482 | hkaiser | 2008-04-16 18:04:19 -0700 (Wed, 16 Apr 2008) | 1 line
  
  Wave: minor edits...
................
  r44483 | hkaiser | 2008-04-16 18:56:25 -0700 (Wed, 16 Apr 2008) | 1 line
  
  Wave: Fixed slex test
................
  r44484 | hkaiser | 2008-04-16 19:00:20 -0700 (Wed, 16 Apr 2008) | 2 lines
  
  Wave: Fixed slex test
................
  r44486 | danieljames | 2008-04-17 00:34:15 -0700 (Thu, 17 Apr 2008) | 35 lines
  
  Movable unordered containers, full support only for compilers with rvalue references.
  
  Merged revisions 44076-44414 via svnmerge from 
  https://svn.boost.org/svn/boost/branches/unordered/trunk
  
  ........
    r44076 | danieljames | 2008-04-06 20:41:19 +0100 (Sun, 06 Apr 2008) | 1 line
    
    Move semantics for compilers with rvalue references.
  ........
    r44077 | danieljames | 2008-04-06 20:48:59 +0100 (Sun, 06 Apr 2008) | 1 line
    
    Do move assignment 'properly'.
  ........
    r44085 | danieljames | 2008-04-06 22:46:04 +0100 (Sun, 06 Apr 2008) | 1 line
    
    Use normal references for the move members, reset the source buckets_ pointer to stop the buckets getting deleted, and remove a superflous pointer check.
  ........
    r44109 | danieljames | 2008-04-07 23:49:36 +0100 (Mon, 07 Apr 2008) | 1 line
    
    Add missing tests.
  ........
    r44366 | danieljames | 2008-04-13 12:59:46 +0100 (Sun, 13 Apr 2008) | 1 line
    
    Avoid using rvalue references in the implementation files.
  ........
    r44368 | danieljames | 2008-04-13 15:13:33 +0100 (Sun, 13 Apr 2008) | 6 lines
    
    Use a cut down version of the work in progress move library to implement move
    semantics on more compilers. Unfortunately the move constructor with allocator
    isn't really practical at the moment, since in the case where the container
    can't be moved, and the allocators aren't equal it will copy the container
    twice.
  ........
................
  r44487 | danieljames | 2008-04-17 00:39:24 -0700 (Thu, 17 Apr 2008) | 13 lines
  
  Use Boost.Test's minimal test library for unordered & hash. It's closer to
  Boster.Test which makes it easier to switch to take advantage of Boost.Test's
  extra testing facilities.
  
  Merged revisions 44420 via svnmerge from 
  https://svn.boost.org/svn/boost/branches/unordered/trunk
  
  ........
    r44420 | danieljames | 2008-04-14 19:02:03 +0100 (Mon, 14 Apr 2008) | 1 line
    
    Use Boost.Test's minimal test library.
  ........
................
  r44488 | danieljames | 2008-04-17 00:42:47 -0700 (Thu, 17 Apr 2008) | 19 lines
  
  A few tweaks for the unordered tests.
  
  Merged revisions 44461-44462,44466 via svnmerge from 
  https://svn.boost.org/svn/boost/branches/unordered/trunk
  
  ........
    r44461 | danieljames | 2008-04-16 18:34:48 +0100 (Wed, 16 Apr 2008) | 2 lines
    
    Try to get some more tests working on Borland.
  ........
    r44462 | danieljames | 2008-04-16 18:34:59 +0100 (Wed, 16 Apr 2008) | 2 lines
    
    Write out the number of copies when the unnecessary copy test fails.
  ........
    r44466 | danieljames | 2008-04-16 18:35:44 +0100 (Wed, 16 Apr 2008) | 2 lines
    
    Add compile test for get_allocator.
  ........
................
  r44489 | danieljames | 2008-04-17 00:45:20 -0700 (Thu, 17 Apr 2008) | 36 lines
  
  Refactor the hash table implementation a little bit. Some of the changes are to
  make implementing emplace easier.
  
  Merged revisions 44458-44460,44463-44465 via svnmerge from 
  https://svn.boost.org/svn/boost/branches/unordered/trunk
  
  ........
    r44458 | danieljames | 2008-04-16 18:31:35 +0100 (Wed, 16 Apr 2008) | 2 lines
    
    Pull out the buffered functions.
  ........
    r44459 | danieljames | 2008-04-16 18:31:45 +0100 (Wed, 16 Apr 2008) | 4 lines
    
    Inline construct_node and create_node into copy_group - these used to be used
    in the implementation of insert but aren't now because of insert's exception
    requirements, so keeping them around was just confusing.
  ........
    r44460 | danieljames | 2008-04-16 18:31:54 +0100 (Wed, 16 Apr 2008) | 4 lines
    
    Change link_node so that it takes a node_constructor containing a constructed
    node instead of a node - this makes the code a little cleaner and also
    simplifies exception safety.
  ........
    r44463 | danieljames | 2008-04-16 18:35:11 +0100 (Wed, 16 Apr 2008) | 2 lines
    
    Explicitly name the different insert overloads.
  ........
    r44464 | danieljames | 2008-04-16 18:35:22 +0100 (Wed, 16 Apr 2008) | 2 lines
    
    Explicitly name the different erase overloads.
  ........
    r44465 | danieljames | 2008-04-16 18:35:33 +0100 (Wed, 16 Apr 2008) | 2 lines
    
    Call the erase methods in hash_table_data directly.
  ........
................
  r44490 | danieljames | 2008-04-17 00:49:45 -0700 (Thu, 17 Apr 2008) | 11 lines
  
  Fix an error on compilers without SFINAE.
  
  Merged revisions 44470 via svnmerge from 
  https://svn.boost.org/svn/boost/branches/unordered/trunk
  
  ........
    r44470 | danieljames | 2008-04-16 18:36:26 +0100 (Wed, 16 Apr 2008) | 2 lines
    
    Missing semi-colon.
  ........
................
  r44491 | djowel | 2008-04-17 02:01:51 -0700 (Thu, 17 Apr 2008) | 1 line
  
  char-sets
................
  r44492 | djowel | 2008-04-17 02:02:03 -0700 (Thu, 17 Apr 2008) | 1 line
  
  char-sets
................
  r44493 | djowel | 2008-04-17 02:44:31 -0700 (Thu, 17 Apr 2008) | 1 line
  
  fixed redundancy in namespace qi::detail::detail
................
  r44495 | jurko | 2008-04-17 04:56:16 -0700 (Thu, 17 Apr 2008) | 1 line
  
  Removed an extra unused 'executed' feature attribute.
................
  r44496 | hkaiser | 2008-04-17 05:22:33 -0700 (Thu, 17 Apr 2008) | 1 line
  
  Spirit V2: Fixed a gcc complaint
................
  r44497 | hkaiser | 2008-04-17 05:29:18 -0700 (Thu, 17 Apr 2008) | 1 line
  
  Spirit V2: Fixed a gcc complaint
................
  r44499 | fmhess | 2008-04-17 06:40:44 -0700 (Thu, 17 Apr 2008) | 3 lines
  
  Added another BOOST_ASSERT to enable_shared_from_this::_internal_accept_owner.
................
  r44506 | johnmaddock | 2008-04-17 08:49:39 -0700 (Thu, 17 Apr 2008) | 1 line
  
  Change <functional> include so that it still works when Boost.TR1 is in the include path.
................
  r44507 | johnmaddock | 2008-04-17 09:21:04 -0700 (Thu, 17 Apr 2008) | 1 line
  
  Try and fix the remaining Intel-Linux failures.
................


[SVN r44523]
2008-04-17 21:50:51 +00:00
Douglas Gregor
0936dbdd03 Add missing include for is_void
[SVN r44030]
2008-04-04 12:26:53 +00:00
Douglas Gregor
adb7b0a214 Change Boost.Function allocator behavior, from Emil Dotchevski
[SVN r43884]
2008-03-27 19:44:37 +00:00
Douglas Gregor
cead36cd5b Disable more Visual C++ warnings in Function headers. Fixes #1416
[SVN r41798]
2007-12-06 18:39:06 +00:00
John Maddock
2378ba59e7 Fix for Borland compilers.
[SVN r39657]
2007-10-02 17:41:35 +00:00
Douglas Gregor
53b95c386d Finalizes the fix to Bug #1260, making vtable_base an actual POD type (oops)
and playing more nicely with reinterpret_cast (thanks to Brad King for the
fixes).



[SVN r39285]
2007-09-14 21:05:46 +00:00
Douglas Gregor
3312c7ffcd function_template.hpp:
- Pass-by-reference internally, when we can. Fixes #1067



[SVN r39244]
2007-09-13 19:06:53 +00:00
Douglas Gregor
de27ae9697 function/function_base.hpp, function/function_template.hpp:
- Switch from dynamic initialization of the vtable pointer to static
    initialization (Fixes #1260)
  - Handle member pointers properly, only using mem_fn within the invoker
    to deal with all of the messy bits of calling member pointers



[SVN r39240]
2007-09-13 17:38:58 +00:00
Douglas Gregor
a7b9940f15 Handle GCC's -fno-exceptions properly. Fixes #1198
[SVN r39061]
2007-08-29 19:06:11 +00:00
Douglas Gregor
e4f165a4e8 Disable MSVC warning about native code generation. Fixes #1163
[SVN r39060]
2007-08-29 18:59:16 +00:00
Douglas Gregor
80a3f47099 Committed patch to eliminate warnings with GCC's -Wundef. Fixes #1197
[SVN r38827]
2007-08-21 15:35:19 +00:00
Douglas Gregor
5c514ebe35 Try to work around EC++4 bug
[SVN r37471]
2007-04-18 12:13:53 +00:00
Douglas Gregor
64c8d10fa8 Eliminate MSVC 8.0 warning
[SVN r35588]
2006-10-13 14:29:56 +00:00
Peter Dimov
a2a810d2c1 Put back #include <functional> in case functionN.hpp is used directly
[SVN r34519]
2006-07-12 22:12:01 +00:00
Peter Dimov
d84481361f TR1 cyclic dependency fixes.
[SVN r34499]
2006-07-10 13:17:41 +00:00
Peter Dimov
872f12efee TR1 conformance: derive from unary_function/binary_function
[SVN r34481]
2006-07-08 18:07:33 +00:00
Peter Dimov
69ee6e2375 Fixed an 'unused parameter' warning.
[SVN r33204]
2006-03-02 21:24:57 +00:00
Dave Abrahams
87ad11583c Use ~Functor instead of ~function_type always, since it makes Borland
and vc6 and who knows what else happy.


[SVN r32832]
2006-02-11 19:08:25 +00:00
Douglas Gregor
9fe1351ab7 Workaround for Borland compilers, from Alistair
[SVN r32394]
2006-01-24 13:57:25 +00:00
Ralf W. Grosse-Kunstleve
58b61efb5f trivial adjustments to enable warning-free compilation with gcc -Wall -W -Werror
[SVN r32364]
2006-01-20 16:53:30 +00:00
Douglas Gregor
f195b6c10a Fixes for GCC 2.95.3
[SVN r32319]
2006-01-13 19:32:58 +00:00
Douglas Gregor
2b4f81ca67 Workaround for GCC 2.95.3
[SVN r32302]
2006-01-13 02:45:33 +00:00
Ralf W. Grosse-Kunstleve
1f51812589 EDG 238 compatibility (and potentially other compilers)
[SVN r32294]
2006-01-12 15:31:46 +00:00
Douglas Gregor
78f6b385d5 Small buffer optimization for Boost.Function
[SVN r32282]
2006-01-10 23:52:35 +00:00
Douglas Gregor
93c691fbdf function_base.hpp, function_template.hpp:
- Use a vtable instead of separate manager/invoker pointers, to shrink the
    size of a boost::function object to 8 bytes
  - Fix a problem with NULL member pointers


[SVN r32186]
2005-12-30 02:31:51 +00:00
Hartmut Kaiser
6023ff5608 Workaround for a problem in Wave.
[SVN r32094]
2005-12-18 21:06:32 +00:00
John Maddock
35e2ff56a0 Large patch from Ulrich Eckhardt to fix support for EVC++ 4.
[SVN r30670]
2005-08-25 16:27:28 +00:00
Douglas Gregor
b5b12295c2 Try to work around Borland parsing bug
[SVN r30645]
2005-08-24 14:12:03 +00:00
Douglas Gregor
eea010ef80 Fully-qualify detail namespace accesses to work around compiler bugs
[SVN r30627]
2005-08-22 12:55:34 +00:00
Douglas Gregor
b8ef34c043 Merged from 1.33.0 release
[SVN r30540]
2005-08-12 13:02:37 +00:00
Peter Dimov
795964f63d bind_function_test added.
[SVN r27721]
2005-03-17 12:09:35 +00:00
Peter Dimov
0f15ba9450 bind_t now implements function_equal instead of operator==
[SVN r27630]
2005-03-13 17:25:42 +00:00
Douglas Gregor
dc61dc6dc8 Fix for Borland, from Tobias Schwinger
[SVN r26886]
2005-01-28 07:04:32 +00:00
Douglas Gregor
e2a7fea741 Workarounds for CW 9.2, from Reece Dunn
[SVN r26583]
2004-12-26 22:05:19 +00:00
Douglas Gregor
e14e57a678 Fix BOOST_NO_VOID_RETURNS workaround
[SVN r26518]
2004-12-15 21:40:30 +00:00
Rene Rivera
c9d7858ff0 Remove tabs in file.
[SVN r24040]
2004-07-25 15:53:20 +00:00
Douglas Gregor
520ee97c82 Doug Gregor -> Douglas Gregor
[SVN r24016]
2004-07-25 02:29:29 +00:00
Douglas Gregor
e4f632e5ca function_template.hpp: Move definition of operator() out-of-line for
any compiler that isn't VC++ 6.0 (Vladimir Prus)


[SVN r23436]
2004-07-11 03:09:35 +00:00
Douglas Gregor
5b4dc38727 boost/function/function_base.hpp:
- Work around a GCC <= 3.3 bug where the return type of a function template
    that cannot possibly match is instantiated when it should not be, causing
    errors in the use of operator==. This results in slightly reduced
    functionality.

libs/function/test/contains_test.cpp:
  - Don't test that which GCC cannot now handle


[SVN r23170]
2004-06-23 16:00:01 +00:00
Douglas Gregor
22fd23b00f function_template.hpp, function_base.hpp:
- Comparison operators are now written in terms of function_base so that
    implicit conversions to function<...> or functionN<...> don't allow
    arbitrary comparisons.


[SVN r23126]
2004-06-20 05:32:28 +00:00
Douglas Gregor
ae11f21513 Try to make IBM VisualAge C++ 6 happy
[SVN r22795]
2004-05-12 00:39:00 +00:00
Douglas Gregor
dc14c35c38 function_base.hpp:
- Fix silly typo where it returned "false" instead of the NULL
    pointer.


[SVN r22760]
2004-05-07 11:43:41 +00:00
Douglas Gregor
1b27dc8f86 Fix some shadow warnings
[SVN r22670]
2004-04-20 00:32:48 +00:00
Douglas Gregor
2c0e633307 Added contains() and function_equal()
[SVN r22483]
2004-03-12 03:38:20 +00:00
Douglas Gregor
1a142a2f94 Fix on GCC 2.9x from Ralf
[SVN r22249]
2004-02-12 22:48:22 +00:00
Douglas Gregor
f0c5e5e95b Work around a GCC 2.95.3 bug triggered by the workaround to a VC++ 7.1 bug...
[SVN r22242]
2004-02-11 18:16:55 +00:00
Douglas Gregor
2fb242eae1 Work around CLR bug in .NET 2003
[SVN r22234]
2004-02-11 04:26:53 +00:00
Douglas Gregor
b7608dff24 type_info::operator== fixes (Peter Dimov)
[SVN r22083]
2004-01-30 17:15:03 +00:00
Douglas Gregor
746676d274 Fix semantics for comparison against reference_wrappers
[SVN r21901]
2004-01-24 23:31:40 +00:00