0

私は、過去に Windows マシンでコンパイルされた多数の個別の .cpp および .h ファイルで構成される大規模なプロジェクトに取り組んでいます。今、私はこのプロジェクトを MacBook Pro に持っています。すべてのファイルをプロジェクトに追加し、ソリューションを構築するのに時間を費やしました。

以下を除くすべてのエラーを削除することができました。ファイル cmath.cpp には、関数 abs に問題があるようです。この問題は、次のコードで発生します。

// abs

#if !defined(_AIX)
inline _LIBCPP_INLINE_VISIBILITY
float
abs(float __x) _NOEXCEPT {return fabsf(__x);}

inline _LIBCPP_INLINE_VISIBILITY
double
abs(double __x) _NOEXCEPT {return fabs(__x);}

inline _LIBCPP_INLINE_VISIBILITY
long double
abs(long double __x) _NOEXCEPT {return fabsl(__x);}
#endif // !defined(_AIX)

#ifndef __sun__

具体的には、ライン

abs(double __x) _NOEXCEPT {return fabs(__x);}

ソリューションのビルド中に次のエラー メッセージが返されます。

「宣言がスコープ内の宣言を使用するターゲットと競合しています」

どうすればいいの?math.cpp 関数は、作成者によって過去にテストされています。それで、ここで何が起こっているのですか?

4

0 に答える 0