diff options
author | Francis Dupont <fdupont@isc.org> | 2018-05-30 14:48:24 +0200 |
---|---|---|
committer | Francis Dupont <fdupont@isc.org> | 2018-05-30 14:48:24 +0200 |
commit | 0473a9811c96d67469f171168e0e1ec8c66942fe (patch) | |
tree | 055da3a1909ffd53b1bce9f0676dfafaa3100b70 /m4macros | |
parent | [master] Merge branch 'master' of ssh://git.kea.isc.org/git/kea (diff) | |
parent | [5560] Added enum class and range-for tests (diff) | |
download | kea-0473a9811c96d67469f171168e0e1ec8c66942fe.tar.xz kea-0473a9811c96d67469f171168e0e1ec8c66942fe.zip |
[master] Merged trac5560 (C++11 checks)
Diffstat (limited to 'm4macros')
-rw-r--r-- | m4macros/ax_cpp11.m4 | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/m4macros/ax_cpp11.m4 b/m4macros/ax_cpp11.m4 index 9f3025ebff..17fbda1809 100644 --- a/m4macros/ax_cpp11.m4 +++ b/m4macros/ax_cpp11.m4 @@ -138,6 +138,35 @@ for retry in "none" "--std=c++11" "--std=c++0x" "--std=c++1x" "fail"; do [AC_MSG_RESULT([no]) continue]) + AC_MSG_CHECKING(enum class support) + feature="enum class" + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [enum class FooBar { + FOO = 1, + BAR = 2 + };], + [FooBar f = FooBar::FOO; + return (f == FooBar::FOO ? 1 : 2);])], + [AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no]) + continue]) + + AC_MSG_CHECKING(range-for support) + feature="constexpr" + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [#include <vector> + std::vector<int> v = { 1, 2, 3, 4 };], + [int sum = 0; + for (auto i : v) { + sum += i; + } + return sum;])], + [AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no]) + continue]) + AC_MSG_CHECKING(lambda support) feature="lambda" AC_COMPILE_IFELSE( |