mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-30 21:23:52 +08:00
12da14a591
This patch fixes "set but not used" warnings in the tests libio/bug-rewind.c and libio/bug-rewind2.c by checking the return values from fwscanf and making the tests fail if those values aren't as expected. Tested for x86_64. * libio/bug-rewind.c (do_test): Check fwscanf return values. * libio/bug-rewind2.c (do_test): Likewise.
84 lines
1.3 KiB
C
84 lines
1.3 KiB
C
#include <stdio.h>
|
|
#include <wchar.h>
|
|
|
|
#define PASSED 0
|
|
#define FAILED 3
|
|
|
|
|
|
static int fd;
|
|
|
|
static void prepare (void);
|
|
#define PREPARE(argc, argv) prepare ()
|
|
|
|
|
|
#define TEST_FUNCTION do_test ()
|
|
static int do_test (void);
|
|
#include "../test-skeleton.c"
|
|
|
|
|
|
static void
|
|
prepare (void)
|
|
{
|
|
fd = create_temp_file ("wrewind.", NULL);
|
|
if (fd == -1)
|
|
exit (3);
|
|
}
|
|
|
|
|
|
static int
|
|
do_test (void)
|
|
{
|
|
FILE *fptr;
|
|
char arg1;
|
|
char arg2;
|
|
int ret1, ret2, result, num;
|
|
|
|
ret1 = 0;
|
|
ret2 = 0;
|
|
|
|
fptr = fdopen (fd, "w+");
|
|
if (fptr == NULL)
|
|
{
|
|
printf ("Unable to open file.\n");
|
|
return 1;
|
|
}
|
|
|
|
if (fwprintf (fptr, L"cderf") <= 0)
|
|
{
|
|
printf ("Unable to write to file with fwprintf().\n");
|
|
fclose (fptr);
|
|
return 2;
|
|
}
|
|
|
|
rewind (fptr);
|
|
ret1 = fwscanf (fptr, L"%c%c", &arg1, &arg2);
|
|
if (ret1 != 2)
|
|
{
|
|
printf ("first fwscanf returned %d, expected 2\n", ret1);
|
|
return 3;
|
|
}
|
|
|
|
rewind (fptr);
|
|
ret2 = fwscanf (fptr, L"%c%n%c", &arg1, &num, &arg2);
|
|
if (ret2 != 2)
|
|
{
|
|
printf ("second fwscanf returned %d, expected 2\n", ret2);
|
|
return 4;
|
|
}
|
|
|
|
if (arg2 != 'd')
|
|
{
|
|
result = FAILED;
|
|
printf ("rewind after first fwscanf failed\n");
|
|
}
|
|
else
|
|
{
|
|
printf ("Passed\n");
|
|
result = PASSED;
|
|
}
|
|
|
|
|
|
fclose (fptr);
|
|
return result;
|
|
}
|