我正在尝试创建一条静态规则来检查SIL4应用程序中防御性编程的令牌传递。
规则如下:“每个函数都应该有一个常量uint_32作为最后一个参数”。
即:
uint_32 foo(uint_32 a, uint_32 b, const uint_32 c) ok
uint_32 foo(uint_32 a, uint_32 b, const uint_16 c) NOK
uint_32 foo(uint_32 a, uint_32 b, uint_32 c) NOK
uint_32 foo(uint_32 a, const uint_32 b, uint_32 c) NOK 有没有人可以帮我?我在黑暗中摸索
发布于 2011-08-22 23:32:10
您可以首先在收集器中收集所有参数的编号(使用ParamNumber属性)。然后选择ParamNumber等于收集到的最大数字的参数(您可以使用MAX()来获取该值)。然后您可以检查该参数是否具有合适的类型。
Irek
https://stackoverflow.com/questions/6034639
复制相似问题