C プログラミング言語で複数のミドルウェア (オペレーティング システム、プロトコル スタック) ベンダーからのプラットフォームの独立性のために使用される冗長な typedef を管理する最良の方法は何ですか。
例:
target.h
/* inclusion lock etc */
typedef char CHAR;
typedef unsigned char BYTE;
typedef unsigned short int WORD;
/* ... more of the same ... */
OS_types.h
/* inclusion lock etc */
typedef char CHAR;
typedef unsigned char BYTE;
typedef unsigned short int WORD;
/* ... more of the same ... */
ある時点で、コンパイラは 2 つの冗長な typedef シンボルがあることを認識し、エラーで救済します。これは、C の定義では許可されていないためです。