Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
[gnulib.git] / m4 / vsnprintf-posix.m4
index 2918986..a4855f3 100644 (file)
@@ -8,8 +8,9 @@ AC_DEFUN([gl_FUNC_VSNPRINTF_POSIX],
 [
   AC_REQUIRE([gl_EOVERFLOW])
   AC_REQUIRE([gl_PRINTF_SIZES_C99])
-  AC_REQUIRE([gl_PRINTF_INFINITE])
   AC_REQUIRE([gl_PRINTF_LONG_DOUBLE])
+  AC_REQUIRE([gl_PRINTF_INFINITE])
+  AC_REQUIRE([gl_PRINTF_INFINITE_LONG_DOUBLE])
   AC_REQUIRE([gl_PRINTF_DIRECTIVE_A])
   AC_REQUIRE([gl_PRINTF_DIRECTIVE_F])
   AC_REQUIRE([gl_PRINTF_DIRECTIVE_N])
@@ -26,33 +27,37 @@ AC_DEFUN([gl_FUNC_VSNPRINTF_POSIX],
     gl_VSNPRINTF_ZEROSIZE_C99
     case "$gl_cv_func_printf_sizes_c99" in
       *yes)
-        case "$gl_cv_func_printf_infinite" in
+        case "$gl_cv_func_printf_long_double" in
           *yes)
-            case "$gl_cv_func_printf_long_double" in
+            case "$gl_cv_func_printf_infinite" in
               *yes)
-                case "$gl_cv_func_printf_directive_a" in
+                case "$gl_cv_func_printf_infinite_long_double" in
                   *yes)
-                    case "$gl_cv_func_printf_directive_f" in
+                    case "$gl_cv_func_printf_directive_a" in
                       *yes)
-                        case "$gl_cv_func_printf_directive_n" in
+                        case "$gl_cv_func_printf_directive_f" in
                           *yes)
-                            case "$gl_cv_func_printf_positions" in
+                            case "$gl_cv_func_printf_directive_n" in
                               *yes)
-                                case "$gl_cv_func_printf_flag_grouping" in
+                                case "$gl_cv_func_printf_positions" in
                                   *yes)
-                                    case "$gl_cv_func_printf_flag_zero" in
+                                    case "$gl_cv_func_printf_flag_grouping" in
                                       *yes)
-                                        case "$gl_cv_func_snprintf_truncation_c99" in
+                                        case "$gl_cv_func_printf_flag_zero" in
                                           *yes)
-                                            case "$gl_cv_func_snprintf_retval_c99" in
+                                            case "$gl_cv_func_snprintf_truncation_c99" in
                                               *yes)
-                                                case "$gl_cv_func_snprintf_directive_n" in
+                                                case "$gl_cv_func_snprintf_retval_c99" in
                                                   *yes)
-                                                    case "$gl_cv_func_vsnprintf_zerosize_c99" in
+                                                    case "$gl_cv_func_snprintf_directive_n" in
                                                       *yes)
-                                                        # vsnprintf exists and is
-                                                        # already POSIX compliant.
-                                                        gl_cv_func_vsnprintf_posix=yes
+                                                        case "$gl_cv_func_vsnprintf_zerosize_c99" in
+                                                          *yes)
+                                                            # vsnprintf exists and is
+                                                            # already POSIX compliant.
+                                                            gl_cv_func_vsnprintf_posix=yes
+                                                            ;;
+                                                        esac
                                                         ;;
                                                     esac
                                                     ;;
@@ -81,8 +86,9 @@ AC_DEFUN([gl_FUNC_VSNPRINTF_POSIX],
     esac
   fi
   if test $gl_cv_func_vsnprintf_posix = no; then
-    gl_PREREQ_VASNPRINTF_INFINITE
     gl_PREREQ_VASNPRINTF_LONG_DOUBLE
+    gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE
+    gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE
     gl_PREREQ_VASNPRINTF_DIRECTIVE_A
     gl_PREREQ_VASNPRINTF_DIRECTIVE_F
     gl_PREREQ_VASNPRINTF_FLAG_GROUPING