about summary refs log tree commit diff
path: root/include/stdint.h
Commit message (Collapse)AuthorAgeFilesLines
* remove __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS checks in stdint.hRich Felker2013-04-221-8/+0
| | | | | | | C++11, the first C++ with stdint.h, requires the previously protected macros to be exposed unconditionally by stdint.h. apparently these checks were an early attempt by the C committee to guess what the C++ committee would want, and they guessed wrong.
* fix type issues in stdint.h so underlying types of 64-bit types match ABIRich Felker2013-04-041-8/+15
|
* eliminate bits/wchar.hRich Felker2013-04-041-1/+8
| | | | | | | the preprocessor can reliably determine the signedness of wchar_t. L'\0' is used for 0 in the expressions so that, if the underlying type of wchar_t is long rather than int, the promoted type of the expression will match the type of wchar_t.
* fix signedness errors in stdint.h constant macrosRich Felker2012-06-081-2/+2
| | | | | the types of these expressions must match the integer promotions. unsigned 8- and 16-bit values promote to signed int, not unsigned int.
* revert hacks for types of stdint.h integer constant macrosRich Felker2012-02-071-4/+4
| | | | | | | | | | | | | per 7.18.4: Each invocation of one of these macros shall expand to an integer constant expression suitable for use in #if preprocessing directives. The type of the expression shall have the same type as would an expression of the corresponding type converted according to the integer promotions. The value of the expression shall be that of the argument. the key phrase is "converted according to the integer promotions". thus there is no intent or allowance that the expression have smaller-than-int types.
* make [U]INTn_C() macros have the right type...Rich Felker2011-10-041-4/+4
| | | | ...and still be valid in #if directives.
* fix the type of wchar_t on arm; support wchar_t varying with archRich Felker2011-09-191-9/+4
| | | | | | | | | | | | | | really wchar_t should never vary, but the ARM EABI defines it as an unsigned 32-bit int instead of a signed one, and gcc follows this nonsense. thus, to give a conformant environment, we have to follow (otherwise L""[0] and L'\0' would be 0U rather than 0, but the application would be unaware due to a mismatched definition for WCHAR_MIN and WCHAR_MAX, and Bad Things could happen with respect to signed/unsigned comparisons, promotions, etc.). fortunately no rules are imposed by the C standard on the relationship between wchar_t and wint_t, and WEOF has type wint_t, so we can still make wint_t always-signed and use -1 for WEOF.
* more types cleanupRich Felker2011-04-111-12/+3
| | | | | | | | the basic idea is that the only things in alltypes.h should be types that either vary from system to system (in practice, not just in theoretical la-la land - this is the implementation so we choose what constraints we want to impose on ports) or which are needed by multiple system headers.
* cleanup types stuff in headers, fix missing u_int*_t in sys/types.hRich Felker2011-04-111-0/+10
|
* initial check-in, version 0.5.0 v0.5.0Rich Felker2011-02-121-0/+107