23-09-2006, 07:08 AM
Hi,
My personal opinion is that if your environment has 64 bit ints then you can use uint64_t you can also use int128_t if there is one.
Whilst MISRA-C is based on C90 we are in a real world where there are 64 bit and 128 bit systems in use. There has been some discussion in other places where there are machines using 9 bits and 36 bits. The int**_t and uint**_t can cope with all of these.
MISRA-C is for the use for systems in the real world, not the theorectical world of ISO language standards.
mhabermann Wrote:Rule 6.3 of MISRA-C lists the typedefs for uint64_t and int64_t, which I believe are not used anymore in the standard and should be disallowed by C90.
Can you confirm that uint64_t and int64_t datatypes are not allowed?
My personal opinion is that if your environment has 64 bit ints then you can use uint64_t you can also use int128_t if there is one.
Whilst MISRA-C is based on C90 we are in a real world where there are 64 bit and 128 bit systems in use. There has been some discussion in other places where there are machines using 9 bits and 36 bits. The int**_t and uint**_t can cope with all of these.
MISRA-C is for the use for systems in the real world, not the theorectical world of ISO language standards.
<t>This post is made in a personal capacity<br/>
Member of MISRA-C-WG since 2002</t>
Member of MISRA-C-WG since 2002</t>