mirror of
https://github.com/boostorg/mp11.git
synced 2026-01-19 04:22:10 +00:00
ead27ca191584806a730ec5157aab875e20e5f41
* added mp_lambda * launched GHA * skipped ICE-generating test in GCC < 4.9 * fixed GCC detection in workaround * test-skipped and documented GCC 4.8 bug * added missing s/const/CONST * tempirarily expanded macro to isolate problem with VS2017 * tried workaround for C3546 * tried another workaround * wrapped workaround up * dropped unnecessary devoiding in variadic (member) functions * temporary code to check VS compliance wrt function qualifiers * removed version printer * checked compliance with qualified (member) function partial specialization * checked each partial specialization individually * wrapped up VS2013 investigation * left variadics out of VS2013 * skipped noexcept-involving tests for VS2013 (keyword not supported) * given up on VS2013 support for mp_lambda * dropped lambda_devoid_args
Mp11, a C++11 metaprogramming library
Mp11 is a C++11 metaprogramming library based on template aliases and variadic templates. It implements the approach outlined in the article "Simple C++11 metaprogramming" and its sequel.
Mp11 is part of Boost, starting with release 1.66.0. It
however has no Boost dependencies and can be used standalone, as a Git submodule, for
instance. For CMake users, add_subdirectory is supported, as is installation and
find_package(boost_mp11).
Supported compilers
- g++ 4.8 or later
- clang++ 3.9 or later
- Visual Studio 2013 or later
Tested on Github Actions and Appveyor.
License
Distributed under the Boost Software License, Version 1.0.
Description
Languages
C++
99.3%
CMake
0.5%
Python
0.1%