问题标签 [pvs-studio]
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.
c++ - PVS-Studio 不处理头文件
我尝试对我的项目进行静态代码分析,该项目基本上由 .hpp 文件组成,因为那里的一切都是“模板化的”,但不幸的是,我从 PSV-Studio 获得了无法处理头文件的信息。这似乎有点奇怪。在现代 C++ 模板中无处不在,AFAIC 它们大多放在头文件中。我错过了什么吗?有没有办法设置 PVS-Studio 对头文件进行分析?
static-analysis - 为什么有些静态分析工具不报告潜在的缓冲区溢出?
我有一个似乎存在缓冲区溢出风险的 strcpy 命令示例,但 PVS-Studio 不会发出警告。在我的示例中,strcpy 用于将命令行参数复制到缓冲区中,而不检查命令行参数的大小。如果参数超过缓冲区的大小,这可能会导致缓冲区溢出。
代码示例:
在处理 carg1 之前不检查 argv[1] 的大小。这不应该引起警告吗?
c++ - C++:x64 不推荐使用 A2W 宏 - 替代方案?
我正在使用 PVS-studio 将程序从 x86 转换为 x64。在 PVS-Studio 中执行分析运行后,每次使用 atlconv.h 中定义的 A2W 宏时,都会收到以下 x64 相关警告:
由于 atlconv 超出了我的范围,我应该简单地忽略这些警告还是在 x64 上执行 A2W 宏的首选方式是什么?
c++ - 将 PVS-Studio 集成到 MSBuild 文件中
我有很多项目,我创建了一个通用的 MSBuild 文件来运行。我正在尝试将 PVS Studio 的静态分析集成到构建中,而无需再次构建。我遵循了 PVS 网站上的一些文档,但我一定遗漏了一些东西。我这么说是因为当我构建 PVS 时,我的触发/调用似乎没有。有没有人有这方面的经验,可以帮帮我吗?
这是我的构建文件的 PVS 位。
我相信你们都需要更多信息来解决这个问题,所以让我知道我应该为你们准备什么。
谢谢,
TBG
unreal-engine4 - 我可以在 Unreal Engine 4 中使用 PVS-Studio Free 吗?
工作室开发人员,
非常感谢您提供的出色产品以及为个人开发人员免费使用它的能力。
您能帮我解决上述问题吗?我可以将 PVS-Studio Free 与 Unreal Engine 4 一起使用吗?如果是 - 你能提供一些教程或帮助信息吗?
谢谢。
pvs-studio - PVS Studio 无法与未安装在默认位置的 MSVS 一起使用
由于磁盘大小限制,我将 MSVS 2017 安装到D:\Program Files\Visual Studio
.
然后我安装了 PVS-Studio v6.14。当我尝试运行它时,我收到以下错误消息:
PVS-Studio 似乎确实将其扩展安装到了D:\Program Files\Visual Studio\Common7\IDE\Extensions\3ci0fu2p.p0x
目录中,因此安装程序似乎找到了可执行文件。
如何将 PVS-Studio 指向正确的目录?
pvs-studio - 获取编译器版本失败
我使用 Microsoft Visual Studio 2015 Community Update 3 来编写各种软件,并希望使用免费许可证检查 PVS-Studio 6.14.21489。
但我不能让它在 Visual Studio 中工作,它只能输出:
无法预处理文件“[文件路径].cpp”:无法获取编译器版本。
V008:无法开始对此文件的分析。[文件路径].cpp。获取编译器版本失败。
在调试和发布时使用 win32 和 x64 进行测试,我在所有文件上都收到此消息,仅此而已。解决方案正在成功编译。
我尝试重新安装产品,同样的效果。
注意:我使用的是 Windows 8.1 Standard edition x64,包括 Visual Studio 在内的所有产品都安装在 C:\Program Files (x86) 的默认文件夹中
任何线索将不胜感激
非常感谢
pvs-studio - PVS studio免费后找不到错误使用方式
我在使用sqlpp11访问数据库的小应用程序中遇到了一个错误。ASAN 在免费使用后中止了该程序,因为我使用了不正确的 API。在试图找出问题时,我尝试了 PVS,但没有成功。因此,我分享代码片段作为在您的软件中添加额外检查的机会。
不正确的代码是:
正确的用法是:
pvs-studio - 使用 pvs-studio 从 Linux 内核检查一个 *.c 文件的最简单方法是什么?
使用 pvs-studio 从 Linux 内核检查一个 *.c 文件的最简单方法是什么?
内核是一个巨大的项目,也许有一种方法可以避免编译所有文件。