警报:warning: ‘currtest’ may be used uninitialized in this function [-Wmaybe-uninitialized]

2016年7月28日 | 分类: 【技术】

当编译OpenSSL时make步骤,

报错:

sslv2conftest.c: In function 'main':
sslv2conftest.c:217:15: warning: 'currtest' may be used uninitialized in this function [-Wmaybe-uninitialized]
         printf("SSLv2 CONF test: FAILED (Test %d)\n", currtest)

参考:https://segmentfault.com/q/1010000005594229

我自己的习惯是编译的时候使用-Wall -Wextra -Werror选项,除非有特别的原因(比如编译别人的库,一般就不用理会警告,毕竟人家的库经过了测试保证没有问题的),所有警告都干掉。。警告确实大部分时候不会影响程序的正确性,但是你一旦使用了未初始化的随机值参与到你程序逻辑当中,有时候就是致命的。。