qpcpp/ports/lint/stdint.h
Quantum Leaps 16708447b9 5.4.0
2015-05-14 16:05:04 -04:00

46 lines
2.1 KiB
C

/**
* \file
* \brief Exact-width integer types. WG14/N843 C99 Standard, Section 7.18
*
* \description
* This header is part of the ANSI C99 standard library to define the
* standard exact-width integer types (see C99 Section 7.18.1.1).
* If the compiler does not provide the stdint.h header file, you can
* either create one in the QP port directory, or you can typedef the
* 8 exact-width integer types directly in the qep_port.h header file.
*
* \note The version included in the QP documentation contains only the 8
* exact-width types actually used in QP. The actual definition of the
* exact-width integer types is platform dependent.
*/
#ifndef stdint_h
#define stdint_h
/*lint -save */
/*lint -e1960 */ /* MISRA-C++:2008 Rule 17-0-2, Re-use of C++ identifier */
/*lint -e9141 */ /* MISRA-C++:2008 Rule 7-3-1, global declaration of symbol */
/* Exact-width types. WG14/N843 C99 Standard, Section 7.18.1.1 */
typedef signed char int8_t; /*!< exact-width 8-bit signed int */
typedef signed short int16_t; /*!< exact-width 16-bit signed int */
typedef signed long int32_t; /*!< exact-width 32-bit signed int */
typedef signed long long int64_t; /*!< exact-width 64-bit signed int */
typedef unsigned char uint8_t; /*!< exact-width 8-bit unsigned int */
typedef unsigned short uint16_t; /*!< exact-width 16-bit unsigned int */
typedef unsigned long uint32_t; /*!< exact-width 32-bit unsigned int */
typedef unsigned long long uint64_t; /*!< exact-width 64-bit unsigned int */
/* Fastest minimum-width types. WG14/N843 C99 Standard, Section 7.18.1.3 */
typedef signed int int_fast8_t; /*!< fast at-least 8-bit signed int */
typedef unsigned int uint_fast8_t; /*!< fast at-least 8-bit unsigned int */
typedef signed int int_fast16_t; /*!< fast at-least 16-bit signed int */
typedef unsigned int uint_fast16_t; /*!< fast at-least 16-bit unsigned int */
typedef signed long int_fast32_t; /*!< fast at-least 32-bit signed int */
typedef unsigned long uint_fast32_t; /*!< fast at-least 32-bit unsigned int */
/*lint -restore */
#endif /* stdint_h */