-函数定义中的Wstrict溢出警告
-Wstrict-overflow warning in a function definition
如何可能获得函数定义的"假定没有签名溢出"警告?
warning: assuming signed overflow does not occur when assuming that
(X + c) < X is always false [-Wstrict-overflow]
unsigned int index(const ItemRequest& request)
^
函数体可在此处找到。
这似乎很奇怪,因为返回值只有ushort或uint。
因为函数定义包含函数的主体。正文显然可以包含一个带符号的溢出。
您显示的部分在参数列表之后既不包含;
也不包含{
,因此它无论如何都是不完整的。
编译器在定位诊断的确切位置时可能会出现错误。当诊断是由优化器引起的时,这种情况尤其常见,因为优化器正在处理已经经过多次转换的代码。
相关文章:
- 'short int'持有的值溢出,但"自动"不会溢出?
- 使用动态分配的数组会导致代码分析发出虚假的C6386缓冲区溢出警告
- 大于65535的C++数组[size]引发不一致的溢出
- 为什么我在leetcode上收到AddressSanitizer:地址0x602000000058上的堆缓冲区溢出错误
- C++中无符号字符溢出
- 在 leetcode 上提交解决方案时出现堆栈缓冲区溢出错误
- 我的 int main() 中出现堆栈溢出错误
- 整数溢出,最大值为 pow(10,19)
- 获取隐式转换溢出从无符号到已签名的警告
- 使用 strcat 获取缓冲区溢出错误
- LeetCode 1:两和 - 地址清理器:堆缓冲区溢出地址
- 给定一个类型,如何派生一个泛型更广泛的类型(例如,用于溢出安全求和)?
- C++ 对象数组堆栈溢出
- 使用提升::lexical_cast捕获溢出
- C++ Unordered_set功能中的溢出
- 自定义排序函数中的堆溢出
- 使用向量的缓冲区溢出
- 有没有一种方法可以捕获进程中的堆栈溢出?C++Linux
- 如何修复此特征矩阵反演溢出错误?
- -函数定义中的Wstrict溢出警告