我在我的程序中引入了新类型,例如tileno_i
,pageno_i
和blockno_u
,其中我过去只有int
或unsigned
,这个想法是为了更清楚地传达一个函数取得或返回的价值。
我希望使用g ++的-Wconversion
标志来发现一些局部变量应该转换为新类型的地方,但我最终会遇到很多需要无用投射的情况,例如
for (tileno_i i = 0 ; i < size(); i += 4) {
// ^
// warning: conversion to tileno_i {aka short unsigned int} from 'int' may alter its value
是否有一个类似于Wconversion
的标志可以让我捕获错误,而不会假设一旦我对它们进行算术运算就会自动提升为int
?
答案 0 :(得分:0)
到目前为止,我最好的解决方法是暂时将xxx_t输入到除整数之外的其他内容(例如枚举),以便输入错误&#39;由于尚未转换的行会触发比需要-Wconversion更高的错误级别。