http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59940
--- Comment #1 from Marek Polacek <mpolacek at gcc dot gnu.org> --- Author: mpolacek Date: Thu Jan 30 16:15:36 2014 New Revision: 207309 URL: http://gcc.gnu.org/viewcvs?rev=207309&root=gcc&view=rev Log: PR c/59940 c-family/ * c-common.h (unsafe_conversion_p): Adjust declaration. (warnings_for_convert_and_check): Likewise. (convert_and_check): Likewise. * c-common.c (unsafe_conversion_p): Add location parameter. Call expansion_point_location_if_in_system_header on it. (warnings_for_convert_and_check): Add location parameter. Call expansion_point_location_if_in_system_header on it. Use it. (convert_and_check): Add location parameter. Use it. (conversion_warning): Likewise. (c_add_case_label): Adjust convert_and_check calls. (scalar_to_vector): Adjust unsafe_conversion_p calls. cp/ * typeck.c (build_ptrmemfunc1): Call convert_and_check with input_location. * cvt.c (cp_convert_and_check): Call warnings_for_convert_and_check with input_location. * call.c (build_conditional_expr_1): Call unsafe_conversion_p with loc parameter. c/ * c-typeck.c (build_function_call_vec): Use loc parameter. (convert_arguments): Add location parameter. Use it. (ep_convert_and_check): Likewise. (build_atomic_assign): Adjust convert_for_assignment call. (build_modify_expr): Likewise. (digest_init): Likewise. (c_finish_return): Likewise. (build_conditional_expr): Adjust ep_convert_and_check calls. (convert_for_assignment): Add rhs_loc parameter. Use it. (build_binary_op): Adjust convert_and_check and ep_convert_and_check calls. testsuite/ * gcc.dg/pr59940.c: New test. * gcc.dg/pr35635.c (func3): Move dg-warning. Added: trunk/gcc/testsuite/gcc.dg/pr59940.c Modified: trunk/gcc/c-family/ChangeLog trunk/gcc/c-family/c-common.c trunk/gcc/c-family/c-common.h trunk/gcc/c/ChangeLog trunk/gcc/c/c-typeck.c trunk/gcc/cp/ChangeLog trunk/gcc/cp/call.c trunk/gcc/cp/cvt.c trunk/gcc/cp/typeck.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.dg/pr35635.c