[kvm-unit-tests PATCH 1/6] libcflat: add PRI(dux)32 format types
Alex Bennée
alex.bennee at linaro.org
Thu Jan 12 10:01:49 PST 2017
Paolo Bonzini <pbonzini at redhat.com> writes:
> On 12/01/2017 18:18, Alex Bennée wrote:
>>> Although I feel there should be a compiler macro way to do this without
>>> a need for configure/makefile trickery at all...
>>
>> I did ask our toolchain bods. They started going on about potential
>> solutions using _Generic but I fear that might be worse in this case!
>
> I don't think _Generic can do string concatenation, can it?
>
> inttypes.h is not part of the set of freestanding headers, only stdint.h
> is. Who is providing stdint.h in your case?
/usr/lib/gcc/arm-none-eabi/5.4.1/include/stdint.h
is part of the compiler package although it can just include the lib
stdint.h if it is there:
#ifndef _GCC_WRAP_STDINT_H
#if __STDC_HOSTED__
# if defined __cplusplus && __cplusplus >= 201103L
# undef __STDC_LIMIT_MACROS
# define __STDC_LIMIT_MACROS
# undef __STDC_CONSTANT_MACROS
# define __STDC_CONSTANT_MACROS
# endif
# include_next <stdint.h>
#else
# include "stdint-gcc.h"
#endif
#define _GCC_WRAP_STDINT_H
#endif
So using inttypes we would get:
>arm-none-eabi-gcc ./test.c -E | grep typedef | grep uint32
typedef long unsigned int __uint32_t;
typedef __uint32_t uint32_t ;
--
Alex Bennée
More information about the linux-arm-kernel
mailing list