...
GCC Compiler can detect violation of this rule when the -Wstrict-prototypes
flag is used. However, it cannot detect violations involving variadic functions, such as the open()
example abovedescribed earlier.
Compass/ROSE can detect some violations of this rule. In particular, it ensures that all calls to open()
supply exactly two arguments if the second argument does not involve O_CREAT, and exactly three arguments if the second argument does involve O_CREAT.
...