如何获得编译警告
当我使用启用了-Wall -Wextra -Wconversion的g ++ 4.1.2编译下面的代码时没有任何警告,我感到非常惊讶。
我希望g ++向我展示每一个警告,以避免潜在的伤害。 我必须坚持g ++ 4.1.2。
#include <stdint.h>
#include <string>
using namespace std;
int main()
{
uint8_t u1=1;
uint64_t u64=1000;
string s1="";
u1=u64; // want warning here
s1=u64; // want warning here
s1=u1;
}
我担心4.3之前的GCC似乎不支持这一点。 对-Wconversion
的描述在4.2和4.3之间变化,以反映新的警告行为,并且没有迹象表明4.3之前的GCC会检查这一点。