问题标签 [pc-lint]

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 投票
2 回答
127 浏览

rhapsody - PCLint 部分分析一些文件

我们正在使用 PCLint 分析 Rhapsody 生成的代码,并希望忽略框架代码中的错误,这些错误不是我们编写的。

这意味着 PCLint 应该部分使用 Rhapsody 生成的注释来分析某些文件。例如,以下所有三个函数都位于同一个源文件中。

这个函数是完全自动生成的,应该被忽略。

在这个函数中,只有标有“Our code is here”的部分是我们编写的,应该由 PCLint 分析。

这个函数完全是我们写的,应该分析一下。

可能吗 ?也许使用一些疯狂的正则表达式的东西?

0 投票
1 回答
660 浏览

c - 你能让 PC Lint 忽略某些特殊的枚举,比如“myenum_min”和“myenum_max”吗

所以给出以下代码:

然后稍后

当我对此运行 lint 时,我收到错误 788:“'myenum_max' 未在默认开关中使用”。

我知道我可以使用 "// !e788" 来忽略这个特定 switch 语句的规则,但这意味着:

  • 对于缺少的潜在有效枚举,此规则将被忽略。
  • 我必须在添加这种 switch 语句的任何地方添加这一行。

或者我可以使用“// -e788”完全删除规则,但是:

  • 再次,对于所有类型的枚举的有效缺失枚举,此规则将被忽略 - 所以更糟。

我真正想要的,但不确定如何去做(或者它是否存在)是忽略给定枚举的规则,例如:

那可能吗?

0 投票
1 回答
594 浏览

c++11 - 如何在 FlexeLint 中启用 C++11

有谁知道如何在 Gimpel flexelint 中启用 C++11 支持?

-std=c++11实现与GCC 编译器中的选项相同

0 投票
1 回答
263 浏览

c++ - PC Lint 并检查可能的 nullptr

我的 PC Lint V9.00k 在一个非常简单的情况下保持沉默,即使在 -w3 上我也会收到警告。有谁知道是否有一些设置可以让 Lint 检查这种情况?

0 投票
3 回答
2025 浏览

c++ - Pc Lint,如何使用 init() 抑制 err 613(可能使用空指针)

试图尽可能简化情况。所以我有一堂课:

生成 2 个 Lint 警告 613(可能使用空指针 'C::i'...)

我知道调用 getI1() 或 getI2() 时“字段”不会为空。不幸的是我无法在构造函数中初始化它。所以我想禁止 Lint 警告。我可以这样做

但在我的真实情况下:

1) 这样的类相当多,每个类都有很多使用这个指针的函数。

2) 我的管理层不允许我在代码中添加太多 lint 注释。

所以我的问题是:有没有人知道一个命令行选项可以让我告诉 Lint “我知道代码不是最好的,停止检查这个特定的成员变量是否为空”?

类似于 -sem 参数的东西,也许?

0 投票
1 回答
220 浏览

c++ - PC Lint,错误 613 和“复杂”如果

Lint 发出警告

有谁知道是否有一个设置可以让 Lint 更“聪明”并且如果 p == nullptr 看到 pOK 不能为真

这比更改代码或抑制这样的警告要好得多

编辑:

Pc Lint,如何使用 init() 抑制 err 613(Possible use of null ponter) 是一个完全不同的问题。那是关于如何抑制警告。这个是关于如何让 Lint 检查“复杂”的 if 语句(如果可能的话)

0 投票
0 回答
428 浏览

c++ - PC-Lint、std::map 和错误 613(可能使用空 ptr)

我尝试使用带有选项 +fnr 的 PC-Lint。它使 lint 怀疑函数的所有类似指针的返回都可能是 nullptr。

但是对于某些函数,我知道它们在任何情况下都不会返回 nullptr。为了告诉 PC-Lint 它可以忽略它们的 nullptr 检查,我可以使用

但是还有另一个问题:当标准容器返回迭代器时,PC-Lint 无法正确检查情况。

它生成

如果 PC-Lint 不够聪明,看不到我在使用之前检查了迭代器,我想至少关闭对 std::map::find 的检查。但我不能,-sem 不起作用

有谁知道如何解决这个问题?

0 投票
0 回答
446 浏览

jenkins - 不显示 PCLInt 警告

我已经在 jenkins 作业中为 PCLint 编译器扫描工作区文件提供了 PCLint 错误日志的正确路径。

执行作业后,我收到以下错误消息:

成功解析文件 D:........\abc.lint,包含 0 个唯一警告和 0 个重复项。

跳过警告责备,因为 Git 是迄今为止唯一受支持的 SCM。

abc.lint 文件包含 PClint 错误,但 jenkin 仍然没有显示任何 PCLint 警告。

0 投票
1 回答
1076 浏览

c - PC-Lint 排除外部文件夹

我正在对我的项目运行 pc lint misra 检查。当我执行程序时,输出很大,因为它包含了 arm 中的所有 bsp 文件。如何让 pc-lint 排除整个目录。在代码中,当我包含来自项目外部的头文件时,我使用<>而不是""

#include <arm_driver.h>

我以为这就够了。他们是否缺少另一个步骤?这些是我传递的附加参数

通过该命令,vf我可以看到所有外部目录文件都被视为库头文件。

0 投票
1 回答
494 浏览

c - 强制宏参数为某种类型

我在我的代码上运行 pc lint,我收到以下警告Converting enum 'TEST_VALUE' to 'int

像函数这样的宏是否可以强制参数为某种类型,或者它总是只是一个 int。我知道我可以让函数configure传递一个 int ,但随后 pc-lint 也会抱怨。