stdio-common: Fix %m sprintf test output for GNU/Hurd

GNU/Hurd has slightly different error messages for undefined numbers,
due to the notion of error subsystems.
This commit is contained in:
Samuel Thibault 2021-12-27 21:22:14 +01:00
parent cca457f9c5
commit 422e4cd0ff

View File

@ -48,16 +48,26 @@ do_test (void)
TEST_COMPARE_STRING (buf, "0");
errno = -1;
#ifdef __GNU__
TEST_COMPARE (sprintf (buf, "%m"), 35);
TEST_COMPARE_STRING (buf, "Error in unknown error system: : -1");
#else
TEST_COMPARE (sprintf (buf, "%m"), 16);
TEST_COMPARE_STRING (buf, "Unknown error -1");
#endif
errno = -1;
TEST_COMPARE (sprintf (buf, "%#m"), 2);
TEST_COMPARE_STRING (buf, "-1");
errno = 1002003;
#ifdef __GNU__
TEST_COMPARE (sprintf (buf, "%m"), 42);
TEST_COMPARE_STRING (buf, "(system kern) error with unknown subsystem");
#else
TEST_COMPARE (sprintf (buf, "%m"), 21);
TEST_COMPARE_STRING (buf, "Unknown error 1002003");
#endif
errno = 1002003;
TEST_COMPARE (sprintf (buf, "%#m"), 7);