2

コードベースで 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
---
4

0 に答える 0