コードベースで iwyu を実行していますが、追加を要求するファイルがいくつかあります
#include <cxxabi.h> // for __forced_unwind
私はコードを削除することができ、それがcv.wait(mu)
.
具体的には、述語なしのバージョンです。
削除するcv.wait(mu)
と、iwyu は提案しなくなりcxxabi.h
ます。
この__forced_unwind
関数は何ですか?なぜ iwyu はそれを推奨していますか?これは安全に無視できますか?
最小限のテスト ケース:
// foo.cpp
#include <condition_variable>
#include <mutex>
void foo(std::condition_variable_any* cv, std::mutex* mu) {
cv->wait(*mu);
}
src/foo.cpp should add these lines:
#include <cxxabi.h> // for __forced_unwind
src/foo.cpp should remove these lines:
The full include-list for src/foo.cpp:
#include <cxxabi.h> // for __forced_unwind
#include <condition_variable> // for condition_variable_any
#include <mutex> // for mutex
---