Commit Graph

872 Commits

Author SHA1 Message Date
382c1e5645 BUGFIX: Expands typename for attribute_type only in case it is really a dependent scope. 2015-01-25 21:48:49 +01:00
588896de45 Revert "BUGFIX: MSVC doesn't accept typename to specify a dependent scope within"
This reverts commit 98247fb97f.
2015-01-25 16:14:45 +01:00
70d5b40a7c BUGFIX: Expands typename for attribute_type only in case it is really a dependent scope. 2015-01-25 16:10:34 +01:00
98247fb97f BUGFIX: MSVC doesn't accept typename to specify a dependent scope within
template specialization in C++03 as standard specify it.

This also works on GCC 4.6, 4.8.2 and 4.9 in C++11 and C++03, I needlessly
added this during some debugging where the compiler was telling me to do so.

I shouldn't have followed it's advice, as this breaks compatibility with
other compilers.
2015-01-21 00:28:13 +01:00
f68b7b1f5a Merge pull request #42 from daminetreg/fusion_adapters
ADAPT_STRUCT macros supporting type deduction fixes for Clang
2014-11-19 08:33:30 +08:00
bc07cac46c Fix use of non-static "obj" in unevaluated expression context of decltype. 2014-11-18 23:39:53 +01:00
b5018586aa Breaking change of BOOST_FUSION_ADAPT_ADT_NAMED and BOOST_FUSION_ADAPT_ASSOC_ADT_NAMED API to be coherent with the expressions of BOOST_FUSION_ADAPT_ADT thanks to correct usage of BOOST_FUSION_PROXY_PREFIX. 2014-11-18 23:38:47 +01:00
18fa262a4e BUGFIX: Use of non-static member in typedef to retrieve the type. clang doesn't allow this even in unevaluated context like decltype. 2014-11-18 22:50:07 +01:00
101d9d5505 Merge pull request #28 from daminetreg/fusion_adapters
develop merged into fusion_adapters branch
2014-10-29 09:42:55 +08:00
2f850604e8 Merge remote-tracking branch 'official/develop' into fusion_adapters 2014-10-27 14:00:49 +01:00
c704efb49c correct fix for ticket 10676. this is a temporary fix until we overhaul the fold implementation. 2014-10-27 19:45:38 +08:00
06a46de636 Merge pull request #18 from Flast/fix/test/tr1_tuple
Fix test error on non c++11 environment; Boost.TR1 is deprecated.
2014-10-26 22:07:28 +08:00
3192da28e6 Merge pull request #25 from daminetreg/fusion_adapters
BOOST_FUSION_ADAPT_*_ADT macros supporting type deduction
2014-10-23 08:48:07 +08:00
e50f5852e4 Changes the test cases, as the behaviour about const-qualifier for
attribute_type and attribute_const_type when type is deduced can be
different than when the type is provided.

Indeed when specifying attribute_type and attribute_const_type manually
it's possible to provide a type which isn't const qualified as
attribute_const_type. When deducing the types from the get_expr, a const
and a non const qualified type is taken respectively for attribute_type
and attribute_const_type.
2014-10-22 22:06:31 +02:00
98b71154ec Merge pull request #24 from Flast/bugfix/invoke
Fix tickets #10443 completely (SFINAE-friendly invoke).
2014-10-22 19:08:07 +08:00
e014a1d173 Fix #10443 completely.
Signed-off-by: Kohei Takahashi <flast@flast.jp>
2014-10-22 19:42:48 +09:00
812e9e379e Fix wrong partial specializations.
Signed-off-by: Kohei Takahashi <flast@flast.jp>
2014-10-22 01:02:39 +09:00
ba723a2cad Merge pull request #23 from Flast/bugfix/cxx14-constexpr
Improve constexpr supports
2014-10-21 22:55:54 +08:00
020b22f9b9 Fix test for compiler not supporting BOOST_PP_VARIADIC. 2014-10-20 22:32:28 +02:00
3a28c3fd81 Updates the doc of ADAPT_ADTs macros 2014-10-20 21:35:01 +02:00
cfcdbe1195 Change adapt_assoc_tpl_adt to test type inference from templated type. 2014-10-20 21:25:07 +02:00
03ba146d84 lvalue typedef for acess::struct_member is a dependent scope to templated
parameter when used within BOOST_FUSION_ADAPT_ASSOC_TPL_ADT.

This fixes test sequence/adapt_assoc_tpl_adt.cpp.
2014-10-20 12:54:31 +02:00
6cad6bef99 fixes ticket #10443. invoke is now sfinae friendly. 2014-10-20 06:23:52 +08:00
3d19bf9d96 fixes ticket 10676. for now, we'll use tr1_result_of. we'll have to do an overhaul of the fold implementation because making it sfinae friendly goes deep down into the low level internals. 2014-10-20 05:55:48 +08:00
bebd553dd6 Use BOOST_CXX14_CONSTEXPR instead of BOOST_CONSTEXPR.
Signed-off-by: Kohei Takahashi <flast@flast.jp>
2014-10-19 23:46:36 +09:00
fdb6598194 Make fold as a single return stmt due to C++11 constexpr.
Signed-off-by: Kohei Takahashi <flast@flast.jp>
2014-10-18 22:49:09 +09:00
badf3f2a47 Fix forward declaration in conflict with constexpr.
Signed-off-by: Kohei Takahashi <flast@flast.jp>
2014-10-18 22:49:08 +09:00
bcc2530f19 Do not expand BOOST_{CXX14_}CONSTEXPR while preprocessing.
Signed-off-by: Kohei Takahashi <flast@flast.jp>
2014-10-18 22:49:08 +09:00
ec9530eb15 Merge pull request #21 from Flast/bugfix/include-guard-mismatch
Fix include guard mismatch.
2014-10-17 21:14:57 +08:00
73f058b381 Fix include guard mismatch.
Signed-off-by: Kohei Takahashi <flast@flast.jp>
2014-10-17 18:53:45 +09:00
2b5da49628 lvalue access::struct_member was wrongly set to be adt_attribute_proxy<> instead of adt_attribute_proxy<>::type. Shame on me. 2014-10-12 16:25:59 +02:00
cd0d3ce09a add comments for readability. 2014-10-12 14:51:34 +02:00
644d72ccfe adds type deduction support for BOOST_FUSION_ADAPT_ASSOC_ADT. 2014-10-12 14:51:04 +02:00
103b02fda2 add test for BOOST_FUSION_ADAPT_ADT_NAMED deducing types. 2014-10-12 12:50:56 +02:00
b8c65b976c Fix test error on non-c++11 env.
Signed-off-by: Kohei Takahashi <flast@flast.jp>
2014-10-09 00:57:37 +09:00
790810757a Rename the test tr1_tuple_auto_conv to std_tuple_auto_conv.
Signed-off-by: Kohei Takahashi <flast@flast.jp>
2014-10-09 00:56:17 +09:00
c8ffc6498b add documentation for BOOST_FUSION_ADAPT_ADT and type deduction. 2014-10-07 21:39:18 +02:00
0f2f1776be Merge pull request #17 from jzmaddock/patch-1
Change to test std::tuple now that Boost.TR1 is deprecated
2014-09-27 22:28:07 +08:00
f869aa1591 Change to test std::tuple now that Boost.TR1 is deprecated and due to be removed. 2014-09-27 13:22:56 +01:00
aa7b0a6972 Factoring out the workaround to access last variadic parameter.
Indeed when some parameter are BOOST_PP_EMPTY the last parameter is
accessed correctly but results in a compilation error which doesn't stop
some compiler (e.g. g++) to go through the preprocessing pass and still
compile the binary correctly. But to avoid the error message I used a
workaround which behaves better. I preferred factoring it out to make
clear that there are some reason why this element is strangely accessed.
2014-09-23 23:07:00 +02:00
69e67cd1ad BUGFIX: When VARIADICS are active supporting any of the input combination.
That is : BOOST_FUSION_ADAPT_AUTO, omitting type or specifying type.
2014-09-17 00:47:52 +02:00
f0bc2a2ac1 Fix dependents scopes and typedefs with typename keywords. 2014-08-26 23:32:26 +02:00
727f49b49e Improve adapt_adt test to check more case with type deduction. 2014-08-26 22:00:16 +02:00
5102d6874f Merge pull request #15 from danieljames/metadata
Create metadata file.
2014-08-19 06:08:17 +08:00
b6c2e9e10b Add metadata file. 2014-08-18 14:59:22 +01:00
7b089aa589 Add support for BOOST_FUSION_ADAPT_ADT to either deduce types or use specified ones. 2014-08-10 17:09:57 +02:00
52d280983b Fix some includes for consistency and use correct accessors macros.
Since we have accessors macros for wrapped attributes we better use them,
to improve readability of the macros.
2014-08-10 15:27:55 +02:00
fe3682ac02 add type deduction support to BOOST_FUSION_ADAPT_ADT_C_BASE. 2014-08-10 15:15:31 +02:00
c8e4172021 Fix indentation. 2014-08-10 15:11:34 +02:00
64c3fc568c Merge pull request #14 from gnzlbg/develop
Initial constexpr support
2014-08-06 20:15:53 +08:00