]> arthur.barton.de Git - netdata.git/blob - m4/ax_c__generic.m4
dns_query_time plugin: added
[netdata.git] / m4 / ax_c__generic.m4
1 # https://lists.gnu.org/archive/html/autoconf-commit/2012-12/msg00004.html
2 # AC_C__GENERIC
3 # -------------
4 # Define HAVE_C__GENERIC if _Generic works, a la C11.
5 AN_IDENTIFIER([_Generic], [AC_C__GENERIC])
6 AC_DEFUN([AC_C__GENERIC],
7 [AC_CACHE_CHECK([for _Generic], ac_cv_c__Generic,
8 [AC_COMPILE_IFELSE(
9    [AC_LANG_SOURCE(
10       [[int
11         main (int argc, char **argv)
12         {
13           int a = _Generic (argc, int: argc = 1);
14           int *b = &_Generic (argc, default: argc);
15           char ***c = _Generic (argv, int: argc, default: argv ? &argv : 0);
16           _Generic (1 ? 0 : b, int: a, default: b) = &argc;
17           _Generic (a = 1, default: a) = 3;
18           return a + !b + !c;
19         }
20       ]])],
21    [ac_cv_c__Generic=yes],
22    [ac_cv_c__Generic=no])])
23 if test $ac_cv_c__Generic = yes; then
24   AC_DEFINE([HAVE_C__GENERIC], 1,
25            [Define to 1 if C11-style _Generic works.])
26 fi
27 ])# AC_C__GENERIC
28