__INT_LEAST8_TYPE__ __INT_FAST8_TYPE__
ARM mcu 관련 소스를 WIN32에서 돌릴 수 있도록, 크로스컴파일 작업중에 다음의 에러 발생
stdint-gcc.h(60) : error C2061: syntax error : identifier 'int_least8_t'
/* 7.8.1.2 Minimum-width integer types */
typedef __INT_LEAST8_TYPE__ int_least8_t;
typedef __INT_LEAST16_TYPE__ int_least16_t;
typedef __INT_LEAST32_TYPE__ int_least32_t;
typedef __INT_LEAST64_TYPE__ int_least64_t;
typedef __UINT_LEAST8_TYPE__ uint_least8_t;
typedef __UINT_LEAST16_TYPE__ uint_least16_t;
typedef __UINT_LEAST32_TYPE__ uint_least32_t;
typedef __UINT_LEAST64_TYPE__ uint_least64_t;
/* 7.8.1.3 Fastest minimum-width integer types */
typedef __INT_FAST8_TYPE__ int_fast8_t;
typedef __INT_FAST16_TYPE__ int_fast16_t;
typedef __INT_FAST32_TYPE__ int_fast32_t;
typedef __INT_FAST64_TYPE__ int_fast64_t;
typedef __UINT_FAST8_TYPE__ uint_fast8_t;
typedef __UINT_FAST16_TYPE__ uint_fast16_t;
typedef __UINT_FAST32_TYPE__ uint_fast32_t;
typedef __UINT_FAST64_TYPE__ uint_fast64_t;
2가지 종류의 typedef 이 있다.
추측 : 컴파일 옵션중에, 속도최적화, 코드사이즈 최적화 등의 옵션에 따라, 형을 달리 선언할듯 싶다.
윗쪽에 아래 항목 추가
#ifdef WIN32
typedef char __INT_LEAST8_TYPE__;
typedef short __INT_LEAST16_TYPE__;
typedef long __INT_LEAST32_TYPE__;
typedef __int64 __INT_LEAST64_TYPE__;
typedef unsigned char __UINT_LEAST8_TYPE__;
typedef unsigned short __UINT_LEAST16_TYPE__;
typedef unsigned long __UINT_LEAST32_TYPE__;
typedef unsigned __int64 __UINT_LEAST64_TYPE__;
typedef char __INT_FAST8_TYPE__;
typedef short __INT_FAST16_TYPE__;
typedef long __INT_FAST32_TYPE__;
typedef __int64 __INT_FAST64_TYPE__;
typedef unsigned char __UINT_FAST8_TYPE__;
typedef unsigned short __UINT_FAST16_TYPE__;
typedef unsigned long __UINT_FAST32_TYPE__;
typedef unsigned __int64 __UINT_FAST64_TYPE__;
typedef long __INTMAX_TYPE__;
typedef unsigned long __UINTMAX_TYPE__;
#ifndef int32_t
#define int32_t long
#endif
#ifndef uint32_t
#define uint32_t unsigned long
#endif
#endif
'C언어,ARM' 카테고리의 다른 글
C언어 - 컴파일러 코드 최적화 방법 분석 (0) | 2017.01.21 |
---|---|
gcc 컴파일러 옵션 -iprefix (0) | 2017.01.14 |
C언어 - 배열 값 대입 코드 비교 (0) | 2016.12.16 |
ARM Cortex-Bit-banding (0) | 2016.12.05 |
임베디드 - AVR(ATMega) 개발환경 vs ARM cortex 개발환경 비교 (0) | 2016.11.17 |