Hi! We build gcc with -Wno-narrowing, for some reason I ended up with old Makefile without that and discovered a couple of -Wnarrowing errors.
This patch fixes them. Bootstrapped/regtested on x86_64-linux (i686-linux fails to bootstrap with/without this patch), ok for trunk? 2017-06-27 Jakub Jelinek <ja...@redhat.com> * predict.c (test_prediction_value_range): Use -1U instead of -1 to avoid narrowing conversion warning. * dumpfile.c (dump_options): Wrap all value into dump_flags_t cast to avoid narrowing conversion warning. * opt-functions.awk (var_ref): Return (unsigned short) -1 instead of -1. * optc-gen.awk (END): Expect (unsigned short) -1 instead of -1. --- gcc/predict.c.jj 2017-06-21 16:53:37.000000000 +0200 +++ gcc/predict.c 2017-06-26 18:39:33.640190953 +0200 @@ -4031,7 +4031,7 @@ test_prediction_value_range () { branch_predictor predictors[] = { #include "predict.def" - {NULL, -1} + {NULL, -1U} }; for (unsigned i = 0; predictors[i].name != NULL; i++) --- gcc/dumpfile.c.jj 2017-06-19 08:27:22.000000000 +0200 +++ gcc/dumpfile.c 2017-06-26 18:38:44.383762664 +0200 @@ -110,9 +110,9 @@ static const struct dump_option_value_in {"missed", MSG_MISSED_OPTIMIZATION}, {"note", MSG_NOTE}, {"optall", MSG_ALL}, - {"all", ~(TDF_RAW | TDF_SLIM | TDF_LINENO | TDF_GRAPH | TDF_STMTADDR - | TDF_RHS_ONLY | TDF_NOUID | TDF_ENUMERATE_LOCALS | TDF_SCEV - | TDF_GIMPLE)}, + {"all", dump_flags_t (~(TDF_RAW | TDF_SLIM | TDF_LINENO | TDF_GRAPH + | TDF_STMTADDR | TDF_RHS_ONLY | TDF_NOUID + | TDF_ENUMERATE_LOCALS | TDF_SCEV | TDF_GIMPLE))}, {NULL, 0} }; --- gcc/opt-functions.awk.jj 2017-01-08 17:41:19.000000000 +0100 +++ gcc/opt-functions.awk 2017-06-26 18:54:15.174940306 +0200 @@ -275,7 +275,7 @@ function var_ref(name, flags) return "offsetof (struct gcc_options, x_target_flags)" if (opt_args("InverseMask", flags) != "") return "offsetof (struct gcc_options, x_target_flags)" - return "-1" + return "(unsigned short) -1" } # Given the option called NAME return a sanitized version of its name. --- gcc/optc-gen.awk.jj 2017-02-25 00:15:02.000000000 +0100 +++ gcc/optc-gen.awk 2017-06-26 18:55:41.613928361 +0200 @@ -336,7 +336,7 @@ for (i = 0; i < n_opts; i++) { alias_posarg = nth_arg(1, alias_arg) alias_negarg = nth_arg(2, alias_arg) - if (var_ref(opts[i], flags[i]) != "-1") + if (var_ref(opts[i], flags[i]) != "(unsigned short) -1") print "#error Alias setting variable" if (alias_posarg != "" && alias_negarg == "") { Jakub