在 2018年03月05日 15:42, Satya Prakash Prasad 写道: > Is there a compiler flag that logs warning / error in case of any implicit > conversions - like int32_t to uint32_t. > > #include <cstdint> > #include <iostream> > > using ::std::int32_t; > using ::std::uint32_t; > > int main(int argc, char *argv[]) > { > int32_t x = 9; > uint32_t i = x; > uint32_t i1 = socketread(...); // returns int32_t -1 on error and >0 > on success > std::cout << " " << x << " " << i << std::flush << std::endl; > return 0; > } > c++ -std=c++11 -Wall -Wconversion -Wpedantic cast.cpp > > I get no issues / warning / error during compilation - is there a way it > can achieved. >
Try `-Wsign-conversion` in addition to `-Wconversion`. -- Best regards, LH_Mouse