在 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