[PATCH updated] Use a proper C tokenizer to implement the obsolete typedefs test.

Joseph Myers joseph@codesourcery.com
Wed Feb 20 17:29:00 GMT 2019


On Wed, 20 Feb 2019, Florian Weimer wrote:

> * Zack Weinberg:
> 
> >         * sys/types.h (__u_intN_t): Remove.
> >         (u_int8_t): Typedef using __uint8_t.
> >         (u_int16_t): Typedef using __uint16_t.
> >         (u_int32_t): Typedef using __uint32_t.
> >         (u_int64_t): Typedef using __uint64_t.
> 
> Why doesn't this change C++ name mangling?

Because the logic in c_common_type_for_mode prefers unsigned int over long 
unsigned int, and long unsigned int over long long unsigned int, if they 
have the same mode. which matches the logic used in bits/types.h.  (Also, 
the mangling of those types is verified in c++-types.data so the testsuite 
would show if it changed.)

-- 
Joseph S. Myers
joseph@codesourcery.com



More information about the Libc-alpha mailing list