2
0
mirror of https://github.com/boostorg/variant.git synced 2026-01-26 19:12:14 +00:00
Commit Graph

351 Commits

Author SHA1 Message Date
Stephen Kelly
724f7fdebc Simplify multi-component ifdefs containing BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
[SVN r86248]
20131209-develop
2013-10-11 23:20:59 +00:00
Stephen Kelly
037af28f3d Remove BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
Process #ifndef...#else...#endif blocks.

[SVN r86245]
2013-10-11 23:17:48 +00:00
Stephen Kelly
ee19ae6fb5 Remove BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
Process #ifdef...#endif blocks.

[SVN r86243]
2013-10-11 23:13:10 +00:00
Antony Polukhin
2cbea14c39 More noexcept modifiers, especially for some of boost::get(T*) and assign/move_assign helpers (refs #7960)
[SVN r86158]
2013-10-04 06:48:59 +00:00
Antony Polukhin
3ed1af5e79 Detect noexcept specification for default constructor of variant (refs #7911)
[SVN r86135]
2013-10-02 13:13:17 +00:00
Antony Polukhin
ac98e0ce4e Removed duplicate code in assign<->move_assign, added const modifiers (refs #7960)
[SVN r86134]
2013-10-02 12:41:09 +00:00
Antony Polukhin
57f1c98b29 Mark move assignment with noexcept if possible (refs #7911)
[SVN r86054]
2013-09-30 14:55:28 +00:00
Antony Polukhin
0d43b3ec34 Commit missing test file for Boost.Variant and uncomment line in Jamfile (refs #2839)
[SVN r86049]
2013-09-30 07:39:25 +00:00
Rene Rivera
b0ec38cbc4 Fix overall Boost testing because of missing file.
[SVN r85991]
2013-09-28 20:02:17 +00:00
Stephen Kelly
a283053408 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
Stephen Kelly
84bdf52f3f Variant: Remove use of obsolete macros.
[SVN r85951]
2013-09-26 09:48:32 +00:00
Stephen Kelly
0e0e0604e4 Variant: Remove obsolete MSVC version checks.
[SVN r85950]
2013-09-26 09:48:16 +00:00
Stephen Kelly
1bf7b791fd Variant: Remove obsolete eti workaround.
[SVN r85949]
2013-09-26 09:47:54 +00:00
Antony Polukhin
97e5305d6b Fix MSVC warning in Boost.Variant (refs #3020)
[SVN r85928]
2013-09-26 07:46:25 +00:00
Antony Polukhin
791f267dda Optimize and fix ambiguity of move_swap in Boost.Variant (refs #2839)
Fix GCC-4.8+ warning in variant_reference_test.cpp

[SVN r85927]
2013-09-26 07:29:25 +00:00
Antony Polukhin
d8180bc3a8 Add experimental variadic templates support to Boost.Variant, enable usage of variadic version for gcc-4.8, clang-3.0 and later compilers (refs #9163)
With this patch size of a binary siginificantly reduced (up to two times)

[SVN r85899]
2013-09-25 11:54:19 +00:00
Stephen Kelly
a1b3867b3a Remove use of obsolete BOOST_APPEND_EXPLICIT_TEMPLATE_TYPE{,_SPEC} macro.
[SVN r85896]
2013-09-25 10:29:44 +00:00
Stephen Kelly
4254803c98 Remove use of obsolete BOOST_EXPLICIT_TEMPLATE_TYPE{,_SPEC} macros.
[SVN r85894]
2013-09-25 10:28:56 +00:00
Antony Polukhin
6db57f7d6b Fix unreachable code warning, thanks 'hvemha' for providing it (refs #8665)
[SVN r85876]
2013-09-25 07:13:57 +00:00
Antony Polukhin
1b57cf1ade Fix issue with const rvalue references in Boost.Variant (refs #8988)
[SVN r85315]
2013-08-12 12:00:13 +00:00
Antony Polukhin
f9d2d9f9d9 Get rid of Boost.Variant hand written non-usable move emulation and use Boost.Move instead (refs #7601). This commit does not make Boost.Variant use move emulated assignments in all situations, but at least removes duplicate/non-working code and makes sure that Boost.Variant is able to work with boost::move (one step closer to full support of rvalue references emulations).
[SVN r85159]
2013-07-25 13:19:50 +00:00
Antony Polukhin
86165b88e3 Temporary disable noexcept detection for move assignment for Boost.Variant (exception specification detection for assignment requires call to is_nothrow_move_assignable for each type. But GCC 4.6 fails to do that and complains about incomplete types ) (refs #7911)
[SVN r85089]
2013-07-20 17:20:02 +00:00
Antony Polukhin
e8e060416c Fix test case (refs #8772)
[SVN r85087]
2013-07-20 15:32:31 +00:00
Antony Polukhin
eebda61e78 Make Boost.Variant work on exception-disabled environments (refs #8717)
[SVN r85081]
2013-07-19 11:40:06 +00:00
Antony Polukhin
a3eb4ddd48 Fix compilation of Boost.Variants move assignment for situations when one of the variant template classes has nothrow copy constructor and throwing move constructor (refs #8772)
[SVN r85080]
2013-07-19 07:52:40 +00:00
Antony Polukhin
e6014a3e21 Added code (and tests) to mark move constructors and move assignemnt of Boost.Variant as noexcept if possible (refs #7911)
[SVN r85079]
2013-07-19 07:43:03 +00:00
Antony Polukhin
3d44c5b695 Workaround for GCC bug (refs #8651)
[SVN r84683]
2013-06-08 07:32:22 +00:00
Antony Polukhin
f5f3769cd4 Update Boost.Variant documentation, add info about multivisitors (refs #8459)
[SVN r84227]
2013-05-10 16:30:12 +00:00
Antony Polukhin
64673bf9df Added one more test for multivisitors that will be used as an example in documentation (refs #8459)
[SVN r84224]
2013-05-10 14:08:49 +00:00
Antony Polukhin
bc54cab94e Multivisitors commit (refs #8459)
[SVN r84112]
2013-05-02 16:45:58 +00:00
Antony Polukhin
6c26dd544d Update docs of Boost.Variant. Add advice about recursive_wrapper performance (refs #7718)
[SVN r84104]
2013-05-02 08:39:34 +00:00
Antony Polukhin
efd81f5a2a Use is_nothrow_move_constructible from Boost.TypeTraits in Boost.Variant (refs #8296)
[SVN r83458]
2013-03-16 10:50:44 +00:00
Antony Polukhin
7c2576948d Refs #7718 :
Workaroung GCC-4.7.2 internal compiler error
More functions marked with BOOST_NOEXCEPT
Added move constructors and move assignment operators to recursive_wrapper

[SVN r81652]
2012-12-01 15:32:07 +00:00
Marshall Clow
b173a982e9 Fix a couple more deprecated macros in Boost.Variant
[SVN r81626]
2012-11-29 17:03:40 +00:00
Antony Polukhin
d1376d9783 Basic rvalues and C++11 support part 2 (refs #7718 , all bugs from patch were fixed)
[SVN r81617]
2012-11-28 19:20:19 +00:00
Marshall Clow
21b9130e3a Remove usage of deprecated macros
[SVN r81472]
2012-11-22 06:13:20 +00:00
Antony Polukhin
f398fb9b2a Added basic rvalue support and marked some functions with BOOST_NOEXCEPT (#refs #7620)
[SVN r81293]
2012-11-11 08:04:55 +00:00
Steven Watanabe
78d52b15cc Make sure that variants with more than 20 types work.
[SVN r77098]
2012-02-23 01:14:13 +00:00
Antony Polukhin
2bef470d77 Fixes #6163 (hash function for variant added)
[SVN r75606]
2011-11-22 16:05:44 +00:00
Steven Watanabe
f9e03b6053 Supress warnings from variant. Refs #4666.
[SVN r71083]
2011-04-07 15:35:56 +00:00
Steven Watanabe
e5547f95bc Avoid a quadratic number of template instantations when using the general case implementation of assignment (with backup storage). This significantly improves compile times for variants with a large number of variant types. See the thread starting at http://lists.boost.org/boost-users/2011/01/65416.php.
[SVN r67798]
2011-01-08 22:44:06 +00:00
Steven Watanabe
0aae21dc6e Make operator() const. Fixes #4967
[SVN r67605]
2011-01-03 05:06:52 +00:00
Steven Watanabe
3f255f9108 Avoid error instantiating map with recursive_variant_. Disable ADL to make instantiation less likely. Fixes #4584.
[SVN r67604]
2011-01-03 04:57:44 +00:00
Daniel James
9f5f65ab9b Detab some jamfiles.
[SVN r63343]
2010-06-26 12:10:47 +00:00
Daniel James
3e99de6129 Update various libraries' documentation build.
Mostly to use the images and css files under doc/src instead of
doc/html, usually be deleting the settings in order to use the defaults.
Also add 'boost.root' to some builds in order to fix links which rely on
it.

[SVN r63146]
2010-06-20 18:00:48 +00:00
Steven Watanabe
40614b7c73 Use the least common multiple of alignments instead of the max. Fixes #993
[SVN r62754]
2010-06-10 18:45:14 +00:00
Steven Watanabe
392fab2f89 Make sure that recursive_variant_ substitution works in all cases. Fixes #1654
[SVN r62753]
2010-06-10 18:16:19 +00:00
Steven Watanabe
7afab43f31 Add missing #includes. Fixes #3515
[SVN r62698]
2010-06-09 23:41:38 +00:00
John Maddock
0110af77a4 Fix various Variant warnings.
Addresses issue #1507.

[SVN r57631]
2009-11-13 10:07:30 +00:00
Hartmut Kaiser
79f5d17b43 Variant: silenced a couple of MSVC warnings created during Spirit test runs
[SVN r57501]
2009-11-09 03:56:25 +00:00