Skip to content

Commit

Permalink
lib: assume char is unsigned
Browse files Browse the repository at this point in the history
Now that we use -funsigned-char, there's no need for this kind of ifdef.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
  • Loading branch information
zx2c4 committed Nov 18, 2022
1 parent 3bc753c commit 0445d1b
Show file tree
Hide file tree
Showing 2 changed files with 0 additions and 16 deletions.
4 changes: 0 additions & 4 deletions lib/is_signed_type_kunit.c
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,7 @@ static void is_signed_type_test(struct kunit *test)
KUNIT_EXPECT_EQ(test, is_signed_type(bool), false);
KUNIT_EXPECT_EQ(test, is_signed_type(signed char), true);
KUNIT_EXPECT_EQ(test, is_signed_type(unsigned char), false);
#ifdef __CHAR_UNSIGNED__
KUNIT_EXPECT_EQ(test, is_signed_type(char), false);
#else
KUNIT_EXPECT_EQ(test, is_signed_type(char), true);
#endif
KUNIT_EXPECT_EQ(test, is_signed_type(int), true);
KUNIT_EXPECT_EQ(test, is_signed_type(unsigned int), false);
KUNIT_EXPECT_EQ(test, is_signed_type(long), true);
Expand Down
12 changes: 0 additions & 12 deletions lib/test_printf.c
Original file line number Diff line number Diff line change
Expand Up @@ -179,18 +179,6 @@ test_number(void)
* behaviour.
*/
test("00|0|0|0|0", "%.2d|%.1d|%.0d|%.*d|%1.0d", 0, 0, 0, 0, 0, 0);
#ifndef __CHAR_UNSIGNED__
{
/*
* Passing a 'char' to a %02x specifier doesn't do
* what was presumably the intention when char is
* signed and the value is negative. One must either &
* with 0xff or cast to u8.
*/
char val = -16;
test("0xfffffff0|0xf0|0xf0", "%#02x|%#02x|%#02x", val, val & 0xff, (u8)val);
}
#endif
}

static void __init
Expand Down

0 comments on commit 0445d1b

Please sign in to comment.