问题标签 [iwyu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1494 浏览

xcode - how to make xcodebuild ignore errors

I want to use include-what-you-use with xcodebuild. The problem is when I do:

from command line, I get errors and build stops. I've read that a common way to use iwyu with make is to run make -k, so I want to use xcodebuild in a similar way. Is it possible? I found nothing about it in man xcodebuild.

0 投票
0 回答
161 浏览

c++ - 如何在 Debian 8.5 上使用 include-what-you-use

我正在尝试在 Debian 8.5 上使用 include-what-you-use。我制作了一个测试程序,它只包含<iostream>和 std::cout 的“Hello, world”到终端。当我调用iwyu它时,我得到以下信息:

t1.cpp:1:10:致命错误:找不到“iostream”文件

显然,它似乎无法找到系统标头。我想我可以通过使用该-I选项来强制它,但我觉得我不应该这样做。要求我告诉它系统标头在哪里让我相信其他东西是可怕的错误并且使用-I只是治疗症状而不是原因。

顺便说一句,我已经验证调用 clang 来编译我的测试程序可以正常工作。所以clang本身似乎工作。

提前致谢!

0 投票
1 回答
2555 浏览

cmake - 在 CMake 中为每个目标设置 CXX_INCLUDE_WHAT_YOU_USE 属性

我的项目中有多个 CmakeLists.txt,我想启用iwyu.

添加

将为一个目标启用它。我想为每个目标启用它,以避免在我包含在已经存在的 CMakeLists.txt 中的另一个 file.cmake 中出现冗余。

0 投票
1 回答
359 浏览

c++ - 如何抑制 IWYU 系统标头错误?

启用 IWYU 构建时,我收到许多关于缺少成员和未声明标识符的错误,例如:'/Library/Developer/CommandLineTools/usr/include/c++/v1/cstdint:153:8: error: no member named 'int8_t' in the global命名空间使用::int8_t;'

我从以下位置构建并安装了 IWYU:https ://include-what-you-use.org/downloads/ 使用:-DIWYU_LLVM_ROOT_PATH=/usr/local/opt/llvm

请你能建议我有什么问题导致这些错误吗?如果做不到这一点,我该如何抑制这些(错误?)错误?

使用 C++17 编程。使用基于 clang 版本 6.0.0 的 include-what-you-use 0.10。使用 clang 6.0.0 编译。使用 cmake 3.11.1 构建。Mac OS High Sierra 版本 10.13.4。

0 投票
1 回答
655 浏览

c++ - 如何将工具 include-what-you-use 与 Visual Studio 解决方案一起使用?

我有一个标准的 Visual Studio 解决方案并使用 MSVS 编译器。如何在没有 CMake 的情况下使用 include-what-you-use?

upd:我使用 sourcetrail 从解决方案中生成编译数据库.json。购买 iwyu_tool.py -p="path to json" doesn't work with error 什么问题?

upd2:我想要一个文件日志错误(阅读评论)

0 投票
0 回答
89 浏览

c++ - Clang 工具(clang-tidy、iwyu 等)的单遍运行以及编译?

有没有可行的方法将 Clang 的各种代码检查工具(如 clang-tidy 和 include-what-you-use)与编译一起运行,以便源代码只解析和处理一次(单遍)?

我这样做是为了提高编译性能,因为解析 C++ 是一个非常重要且昂贵的过程。

0 投票
0 回答
492 浏览

cmake - 如何将 `include-what-you-use` 警告视为 `cmake` 的错误

是否可以使用 将include-what-you-use警告视为错误cmake

我正在include-what-you-use尝试将其集成到我们的cmake构建过程中。include-what-you-use期望的行为是在生成报告时停止构建过程,然后打印警告。目前,构建仍在继续。

由于以下原因,该工具被集成到cmake构建过程中:

我还将Werror标志添加到我的cmake目标。

0 投票
0 回答
98 浏览

build - 我可以用 CCache 加速 IWYU 吗?

我正在开发一个项目,它使用 CMake 生成构建系统,使用 CCache 加快构建速度(通过设置CMAKE_CXX_COMPILER_LAUNCHER),并包含您使用的内容来整理所需的标头(通过设置CMAKE_CXX_INCLUDE_WHAT_YOU_USE)。

IWYU 需要花费相当长的时间来分析所有项目文件,这使得构建过程变得不必要地冗长。

有没有办法使用 CCache 缓存其结果?

如果有任何建议,IWYU 会返回退出代码 1,如果没有建议则返回 2,因此我尝试创建一个返回 0 而不是 2 的包装器,因为 CCache 需要它来缓存结果,但这并没有太大帮助。现在它抱怨没有创建输出文件。这是正确的方法吗?

0 投票
0 回答
222 浏览

c++ - iwyu 为 __forced_unwind 添加 cxxabi.h

我在我的代码库上运行 iwyu,并且有一些文件坚持我添加

我能够消融代码并发现它似乎与cv.wait(mu).

具体来说,无谓词版本。

如果我删除cv.wait(mu),iwyu 不再建议cxxabi.h

这是什么__forced_unwind功能,为什么 iwyu 推荐它,可以安全地忽略它吗?

最小测试用例:

0 投票
3 回答
85 浏览

c - 定义前是否允许 typedef

最低代码:

iwyu坚持我struct foo_s在我之前typedef转发声明foo_t

输出:

这适用于不同版本iwyu-Xiwyu --no_fwd_decls.

这是一个错误iwyu还是C标准希望我在 ? 之前定义类型typedef