Commit Graph

864 Commits

Author SHA1 Message Date
Kohei Takahashi 9ab7774fd7 Replace some usage of std::forward to static_cast.
For more details, See inline comment of include/boost/fusion/support/config.hpp .
2014-11-26 01:35:55 +09:00
Kohei Takahashi 687668c110 Fix sprious compile error on VS2015 Preview.
MSVC 2015 Preview will treat unary-ctor call as a variable declaration
even if member call follows, which member has the same name with any
other class (i.e. there are no relations between the member and such
class). This issue already reported at [1].

1. https://connect.microsoft.com/VisualStudio/feedback/details/1037783/unary-ctor-call-v-s-variable-decl

    struct foo
    {
        foo(int) {}
        void set() {}
    };

    struct set;

    int main()
    {
        int i;
        foo(i).set(); // VS2015 try to decl `i` here and conflict with above.
    }
2014-11-24 03:07:16 +09:00
Kohei Takahashi 4dd4773d3d Fix wrong include
and add tests for move.
2014-11-19 17:38:16 +09:00
Kohei Takahashi 9075da0790 Mitigate too noisy name-hiding warnings (C4453) on VS2015 Preview.
NOTE: This commit doesn't contain new preprocessed file to review easier.
2014-11-19 13:20:36 +09:00
Joel de Guzman 2a50f7caad Better patch from Kohei Takahashi! Allows good forwarding on C++11
while still allowing C++03.
2014-11-19 08:31:35 +08:00
Joel de Guzman c952a5c053 Const correctness fix for result_of::deref_data 2014-11-19 07:54:37 +08:00
Joel de Guzman c65000eac8 Merge pull request #41 from Flast/patch-2
`result_of::at<Seq, N>::type` is't defined when sizeof of sequence is less than N
2014-11-19 06:33:04 +08:00
Joel de Guzman d10f40c489 Merge pull request #40 from Flast/patch-1
result_of::size::value and result_of::size::type::value should be same type
2014-11-19 06:22:41 +08:00
Kohei Takahashi c9ae4fc886 result_of::at<Seq, N>::type is't defined when sizeof of sequence is less than N, close #6507, #7651
Original proposals suggest making as a hard error (by MPL asssert /
static assert), however this change just doesn't define due to
SFINAE-friendly.
2014-11-19 02:05:58 +09:00
Joel de Guzman 0f34b3a692 Fixed C++11 implementation of map's result_of::deref_data to return a
reference as expected.
2014-11-18 23:11:20 +08:00
Joel de Guzman 68b4683e95 added missing include 2014-11-18 14:12:07 +08:00
Joel de Guzman 63045e8611 remove unnecessary actor to tighten ADL resolution. the one above it is
sufficient.
2014-11-15 09:54:21 +08:00
Joel de Guzman f3fa7a1dc6 Fix for fusion pair to make the compiler select the proper copy
constructor and remove a viable, but wrong, constructor. test added.
2014-11-15 09:35:50 +08:00
Kohei Takahashi cc9b043168 result_of::size::value and result_of::size::type::value should be same type, rels to: #7304. 2014-11-13 15:44:30 +09:00
Joel de Guzman a4660f41af added failing test as per https://github.com/boostorg/fusion/pull/38 2014-11-13 09:03:37 +08:00
Joel de Guzman 6da646631c Merge pull request #38 from ldionne/develop
Fix compilation error with as_deque in C++11.
2014-11-13 07:12:55 +08:00
Louis Dionne 0ed591d214 Fix compilation error with as_deque in C++11. 2014-11-12 14:59:28 -05:00
Joel de Guzman 15dd9c9d97 test that adapted members can actually be expressions 2014-11-12 11:13:19 +08:00
Joel de Guzman 1dccb553ea Merge pull request #35 from Flast/develop
Minor fixes
2014-11-12 07:39:17 +08:00
Joel de Guzman a2e32493bb Merge pull request #37 from ldionne/develop
Use BOOST_CONSTEXPR instead of (nonexistant) BOOST_CXX14_CONSTEXPR. (reverted from commit 3280267ed4)
2014-11-12 07:35:19 +08:00
Joel de Guzman 3280267ed4 Merge pull request #37 from ldionne/develop
Use BOOST_CONSTEXPR instead of (nonexistant) BOOST_CXX14_CONSTEXPR.
2014-11-12 07:23:14 +08:00
Louis Dionne b7f95ee853 Use BOOST_CONSTEXPR instead of (nonexistant) BOOST_CXX14_CONSTEXPR. 2014-11-11 18:02:03 -05:00
Joel de Guzman dec799caa8 Merge pull request #36 from ldionne/develop
Fix hard compilation error with nested fusion::cons.
2014-11-12 05:53:39 +08:00
Louis Dionne d93e675408 Fix hard compilation error with nested fusion::cons. 2014-11-11 10:23:36 -05:00
Kohei Takahashi 06cac9da1a Fix document typo 2014-11-10 16:03:36 +09:00
Kohei Takahashi 465c3f273b result_of::{copy,move,swap} are now SFINAE-friendly 2014-11-10 14:38:42 +09:00
Kohei Takahashi 6314f1a450 fusion::swap should be inline 2014-11-10 14:34:02 +09:00
Kohei Takahashi 916df63a14 Add result_of::{copy,move}, close #5886
Thanks to: Jamboree
2014-11-10 14:32:23 +09:00
Joel de Guzman b637f2569b Merge pull request #34 from Flast/develop
Misc...
2014-11-09 07:26:20 +08:00
Kohei Takahashi 95d2a111ab Add tests for #3225 2014-11-09 02:55:59 +09:00
Kohei Takahashi ff56beaf55 Remove use of boost::blank, close #8622 2014-11-09 00:49:29 +09:00
Kohei Takahashi 5dc9f457a0 Merge remote-tracking branch 'origin/develop' into develop 2014-11-09 00:33:56 +09:00
Joel de Guzman 5ff35b6540 Merge pull request #33 from mkurdej/fix/doc-spelling
Fix spelling errors in documentation.
2014-11-08 06:30:29 +08:00
Marek Kurdej a62956bb12 Fix spelling errors in documentation. 2014-11-07 18:34:18 +01:00
Kohei Takahashi bd5ce92e10 Replace type_traits::ice_and with well documented mpl::and_. 2014-11-08 02:32:06 +09:00
Kohei Takahashi 834250a4c8 Describe find(_if) return type clearly. 2014-11-07 13:20:43 +09:00
Kohei Takahashi a87a665072 Fix description of find_if document. 2014-11-07 12:40:25 +09:00
Kohei Takahashi 7a7b225fb1 Add boost_tuple_iterator_identity to compare iterator correctly.
And add test for boost_tuple_iterator.
2014-11-06 17:10:31 +09:00
Kohei Takahashi 5f416e24fc Use category_of to get correct iterator category. 2014-11-06 17:10:31 +09:00
Kohei Takahashi a7e9bb2df4 Fix to meet constexpr requirements 2014-11-06 17:10:31 +09:00
Kohei Takahashi 20ee8d192a Fix missing includes, close ticket #8457.
e.g. Now can compile following simple case.

    #include <boost/fusion/iterator/iterator_facade.hpp>
    #include <boost/fusion/iterator/iterator_adapter.hpp>

    struct null_iterator
        : iterator_facade<null_iterator, forward_traversal_tag> {};

    struct null_adapter
        : iterator_adapter<null_adapter, null_iterator> {};
2014-11-06 17:10:25 +09:00
Joel de Guzman bf10307430 Merge pull request #32 from Flast/develop
Minor document fixes.
2014-11-03 17:38:43 +08:00
Kohei Takahashi 4835310623 Remove unnecessary header, see 5adcb5b 2014-11-03 06:25:08 +09:00
Kohei Takahashi ba0e753cff Fix document typo, close #6090. 2014-11-03 06:24:20 +09:00
Kohei Takahashi b7f0f8856c Tuple document's cosmetic changes 2014-11-03 06:24:20 +09:00
Kohei Takahashi 416cd2e2d9 Fix dead links 2014-11-03 06:24:20 +09:00
Kohei Takahashi f3921fee95 Fix tuple heading, close #5324 2014-11-03 06:24:20 +09:00
Joel de Guzman ec3cefd86f Merge pull request #31 from Flast/develop
Fix three test failures on older and c++03 compiler.
2014-11-02 20:49:23 +08:00
Kohei Takahashi 0a13aa5ee4 Change the result_of behaviour with BOOST_RESULT_OF_USE_DECLTYPE
to make consistency between boost::result_of.
2014-11-02 15:08:56 +09:00
Kohei Takahashi 7ef4b03249 Fix typo/missing copyright notice, reported by Boost Inspection Report. 2014-11-01 22:12:11 +09:00