私のプロジェクトには、Swift 2.2、Objective C、および C++ と Xcode 7.3 が含まれています。
生成された ProducModuleName-Swift.h ファイルに次のエラーが表示されます
Typedef redefinition with different types ('uint_least16_t' (aka 'unsigned short') vs 'char16_t')
Typedef redefinition with different types ('uint_least32_t' (aka 'unsigned int') vs 'char32_t')
次のセクションで
if !defined(SWIFT_TYPEDEFS)
# define SWIFT_TYPEDEFS 1
# if defined(__has_include) && __has_include(<uchar.h>)
# include <uchar.h>
# elif !defined(__cplusplus) || __cplusplus < 201103L
typedef uint_least16_t char16_t;
typedef uint_least32_t char32_t;
# endif
C++ パラメーターを C++ 11 に変更することでエラーを回避できます。これにより、この厄介なコードがスキップされます。
ただし、これに対するよりクリーンな解決策があるかどうかを知りたいです。
上記のコードを明確にするために、XCode がコンパイル時に生成するコードを示します。私はこのコードを制御できません