printf ("%s\tExpected \"%s\" (%u)\n\tGot      \"%s\" (%d, %u)\n",
printf ("%s\tExpected \"%s\" (%Zu)\n\tGot      \"%s\" (%d, %Zu)\n",
do_test (int argc, char **argv){  const struct testcase *t;  int result = 0;  for (t = testcases;       t < &testcases[sizeof testcases / sizeof testcases[0]];       ++t)    {      char buf[1024];      int n = snprintf (buf, sizeof buf, t->fmt, t->value);      if (n != strlen (t->expect) || strcmp (buf, t->expect) != 0)	{	  printf ("%s\tExpected \"%s\" (%u)\n\tGot      \"%s\" (%d, %u)\n",		  t->fmt, t->expect, strlen (t->expect), buf, n, strlen (buf));	  result = 1;	}    }  return result;}