Commit Graph

1973 Commits

Author SHA1 Message Date
Jason Rice
56ed55173f [experimental] Printable support for Visual C++
- Fixes printable support for template, metafunction, and metafunction
    in MSVC. Types rendered within are implementation defined.
2018-06-19 20:51:48 -07:00
Louis Dionne
4726c119eb [doc] Mention what version of Boost are supported by the adapters
Relates to boostorg/hana#403
2018-06-19 20:48:31 -07:00
Louis Dionne
b1c9d2b901 [test.tuple] Remove invalid tests using array smart pointers
Fixes #402
2018-06-04 11:33:03 -07:00
Louis Dionne
99d68835ce [examples] Use BOOST_HANA_STRING instead of _s operator
Fixes #401
2018-06-04 11:33:03 -07:00
Louis Dionne
ffba8a9990 [ext.mpl] Support MPL sequences without BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES
Fixes #399
2018-06-04 11:33:03 -07:00
Jason Rice
5df3603f1b [tuple] remove superfluous conversion in example 2018-05-06 10:13:03 -06:00
Louis Dionne
5af6066e61 Make some containers final and add notes about assumptions about representation
Also, add tests to make sure that an empty pair can be EBO'd. This one is very
important because a typical use case is to create a tuple of pairs of empty
types (e.g. in hana::map), and we expect this to be empty.
2018-05-06 10:08:49 -06:00
Jason Rice
7cd10e98bd More deferring concept checks 2018-04-14 14:25:44 +01:00
Jason Rice
16a7bcda54 [lift] Defer concept check until invocation 2018-04-07 22:33:48 -07:00
Louis Dionne
fd9edff559 [string] Add comment about BOOST_HANA_STRING not being constexpr pre-17
Closes #390
2018-03-05 13:44:05 -08:00
Louis Dionne
e53c547207 Merge 'develop' into 'master' for Hana v1.4.0, aka Boost 1.67.0 2018-02-26 23:08:49 -08:00
Louis Dionne
bd60612973 Bump version to 1.4.0 2018-02-26 23:01:29 -08:00
Louis Dionne
1970ee95ec [to] Fix ambiguous conversion to the underlying type for integral constants
Fixes #354
2018-02-21 00:55:24 -08:00
Louis Dionne
1aa52a9726 [string] Add a conversion from a Constant holding a char const*
Closes #347
2018-02-21 00:23:17 -08:00
Louis Dionne
ba723f7714 Fix broken unit test for struct macros 2018-02-10 16:25:48 -08:00
Louis Dionne
b6807015f1 Remove the limitation on the number of members for struct macros
This is done by generating the supporting preprocessor macros with ERB up to
the required arity, like we do for the struct macros themselves.

Fixes #376
2018-02-10 14:20:52 -08:00
Louis Dionne
79745253f8
[Travis] Various improvements
Merge pull request #385 from ldionne/develop
2018-01-28 12:50:17 -08:00
Louis Dionne
cddbcd6d3a [Travis] Add tests on Clang 5.0
Also bump patch-level of Clang 4.0.
2018-01-25 19:46:01 -08:00
Louis Dionne
74dea58a6e Bump minimum Boost version to 1.63 and test against 1.66.0 2018-01-25 15:30:13 -08:00
Louis Dionne
2a344f1b38 [Travis] Only update rvm and install gems when running benchmarks
This saves us approximately 30s per job that does not need these dependencies.
2018-01-25 15:30:13 -08:00
Louis Dionne
78aa97e2db [Travis] Remove redundant check for cached Boost
Since we don't cache Boost anymore, it's not necessary.
2018-01-25 15:30:13 -08:00
Louis Dionne
919ffb0a57 [Travis] Get rid of the custom formatting job
This removes yet another OS X job from the Travis matrix.
2018-01-25 15:30:13 -08:00
Louis Dionne
602574fe57 [Travis] Remove the pr/ branch hack
Instead, I should be submitting PRs from my fork to boostorg/hana, and this
should not be necessary.
2018-01-25 01:32:09 -08:00
Louis Dionne
01cb1c7c9d [Travis] Switch to Trusty by default 2018-01-25 01:32:09 -08:00
Louis Dionne
cb0cccf0dc [Travis] Do Boost.Build unit tests and documentation in the same job
This allows us to reduce the number of Travis jobs. The OS X jobs are
especially slow to start.
2018-01-24 23:46:25 -08:00
Louis Dionne
7014a2a383 [Travis] Fix build with Boost.Build 2018-01-24 21:01:19 -08:00
Louis Dionne
5c373d1e6c [Travis] Properly remove Hana shipped with Boost
The path we removed in the Boost tree was the wrong one. Additionally, since
we used `rm -rf`, no error was displayed even though the removal never occurred.
2018-01-21 17:08:37 -08:00
Louis Dionne
d18035794b [Travis] Fail faster when LLVM download fails 2018-01-21 15:59:31 -08:00
Jason Rice
91def72864 [CMake] Specify the toolchain file for the deploy test
Closes pr/toolchain (#382)
2018-01-07 09:26:21 -08:00
Louis Dionne
7af285a8b6 [Travis] Print version of Boost.Build
[ci-skip]
2018-01-06 12:26:19 -08:00
Louis Dionne
a525aab0f4 Add tests to make sure that hana::accessors does not decay arrays to pointers
Also, add tests to validate that `hana::tuple` containing an array can't be
constructed from an array, per the standard. Related to #365.
2018-01-01 14:38:18 -08:00
Nikita Kniazev
a6b569b02e Add tests pre-check for B2 2018-01-01 14:37:29 -08:00
Louis Dionne
c92b2d64e1 [tests] Add automatic unit tests for 'ap' 2017-12-01 18:00:49 -08:00
Louis Dionne
a82e0f08c9 [CMake] Specify the generator during the deploy test
This fixes the build on appveyor.
2017-11-26 21:28:45 -08:00
Louis Dionne
8847806d65 [CMake] Add a deployment test that checks the validity of HanaConfig.cmake 2017-11-26 17:50:04 -08:00
Louis Dionne
5e1b6c5039 [ext.std.tuple] Always enable the adapter, even on older libc++'s
This used to guard against a bug in the std::tuple implementation, but it
seems like this bug was fixed in subsequent minor releases of Clang 3.5 and
3.6, which we test against.
2017-11-26 14:18:08 -08:00
Louis Dionne
af5a9c5ee2 [CMake] Give the 'check' target access to the terminal
This allows outputing CTest results as the tests are being run, as opposed
to all at once at the end.
2017-11-26 14:18:07 -08:00
Louis Dionne
154ddb4f83 [tests] Add missing automatic test cases and get rid of custom tests for Fusion 2017-11-26 14:18:07 -08:00
Louis Dionne
fa7a6a7501 [Travis] Change how CMake is installed to fix the Xcode 7.3 build 2017-11-26 07:15:20 -08:00
Louis Dionne
80939d4949 [ext.boost.fusion] Unconditionally enable some Fusion adaptor tests
Those tests were broken with older versions of Boost that we don't test
against anymore. Furthermore, since we document that Boost and standalone
Hana installations should not be mixed, there's no risk of this change
breaking any existing code (that would be mixing standalone Hana with an
old version of Boost).
2017-11-25 13:59:20 -08:00
Louis Dionne
df7ce357f6 [Travis] Test against Boost 1.65.1 and drop versions older than 1.63
This reduces the load on Travis. Since we don't advertise anywhere that Hana
works with older versions of Boost, if this ends up breaking someone (because
they're mixing Hana and Boost at different versions and we introduce a change
that breaks under some older Boost), it can be argued that it's their problem.
2017-11-25 13:59:19 -08:00
Louis Dionne
a5d1ffb0c4 [CMake] Update required version of CMake to 3.9 2017-11-25 13:59:19 -08:00
Louis Dionne
b88ce8d54f [CMake] Refactor how we set the include path in HanaConfig.cmake 2017-11-25 13:12:12 -08:00
Louis Dionne
126cdb8e0d [CMake] Make the header tests generate a single executable
The idea was given to me by Daniel Pfeifer (@purpleKarrot), who said it may
actually help find ODR issues better. In any case, this simplifies the script
and reduces the (otherwise overwhelming) number of targets.
2017-11-25 13:00:53 -08:00
Louis Dionne
11e3869648 Add take_back_c
This fixes a consistency issue where take_front_c was provided, but take_back_c
was not.

Closes #372
2017-11-25 11:13:48 -08:00
Louis Dionne
5b1c2ada83
Merge develop into master for boost 1.66.0 2017-11-12 11:28:29 -07:00
Louis Dionne
b4ad5e1bfa Bump version to 1.3.0 2017-11-11 10:57:26 -07:00
Louis Dionne
b9cff6c005 [Travis] Temporarily disable xcode 7.3, which fails
This is needed to unblock Travis so I can merge to master for the 1.66
release.
2017-11-11 10:46:30 -07:00
Louis Dionne
e09b068f2b [Travis] Modernize OS X images 2017-11-09 10:45:09 -07:00
Louis Dionne
9a8081b01f [NFC] Forego implicit conversion in 'index_if' 2017-11-09 10:33:12 -07:00