X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fgetdate.m4;h=67f9c6566da136f77dc1f5592a62271c75ff9114;hb=2f23fbb2ce253697930e8f769e13134f9be81363;hp=225b7b75b36c3a944a9c997d0f57fcf2b553900a;hpb=4fde4952d5a3db51a122f96a31bfcd6879399fea;p=gnulib.git diff --git a/m4/getdate.m4 b/m4/getdate.m4 index 225b7b75b..67f9c6566 100644 --- a/m4/getdate.m4 +++ b/m4/getdate.m4 @@ -1,27 +1,31 @@ -# getdate.m4 serial 9 -dnl Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +# getdate.m4 serial 14 +dnl Copyright (C) 2002-2006, 2008, 2009 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. +dnl Define HAVE_COMPOUND_LITERALS if the C compiler supports compound literals +dnl as in ISO C99. +dnl Note that compound literals such as (struct s) { 3, 4 } can be used for +dnl initialization of stack-allocated variables, but are not constant +dnl expressions and therefore cannot be used as initializer for global or +dnl static variables (even though gcc supports this in pre-C99 mode). AC_DEFUN([gl_C_COMPOUND_LITERALS], [ - AC_CACHE_CHECK([for compound literals], gl_cv_compound_literals, - [AC_TRY_COMPILE([struct s { int i, j; }; struct s s = (struct s) { 1, 2 };], - [struct s t = (struct s) { 3, 4 };], + AC_CACHE_CHECK([for compound literals], [gl_cv_compound_literals], + [AC_TRY_COMPILE([struct s { int i, j; };], + [struct s t = (struct s) { 3, 4 }; + if (t.i != 0) return 0;], gl_cv_compound_literals=yes, gl_cv_compound_literals=no)]) if test $gl_cv_compound_literals = yes; then - AC_DEFINE(HAVE_COMPOUND_LITERALS, 1, + AC_DEFINE([HAVE_COMPOUND_LITERALS], [1], [Define if you have compound literals.]) fi ]) AC_DEFUN([gl_GETDATE], [ - AC_LIBSOURCES([getdate.h, getdate.y]) - AC_LIBOBJ([getdate]) - dnl Prerequisites of lib/getdate.h. AC_REQUIRE([AM_STDBOOL_H]) AC_REQUIRE([gl_TIMESPEC])