Is it time to take middle-end stringop/array warnings out of -Wall?
Martin suggests new warning categories for memory-safety issues with aggressive warnings for potential safety problems.
Martin Uecker suggests creating new warning categories related to memory-safety issues. These categories would have aggressive warnings, even for potential safety problems. This could include warnings about unsafe casts or pointer arithmetic. He acknowledges the desire to reduce false positives.
- proposer
Suggests creating new warning categories related to memory-safety issues with more aggressive warnings.
“Some alternative could be to have new warning categories related to memory-safety issues where the expectation is that the warnings are aggressive and even potential safety issues see a warning.”
In Details
GCC's middle-end performs optimizations and transformations on the intermediate representation (IR) of code. Stringop/array warnings detect potential buffer overflows or out-of-bounds accesses during this phase.
For Context
Compilers use a multi-stage process to translate human-readable code into machine instructions. After parsing and initial conversion, the "middle-end" stage optimizes the code. This stage can detect potential errors, such as writing beyond the boundaries of an array. These warnings can be controlled by flags such as -Wall (all warnings) and -Wextra (extra warnings).