diff --git a/gcc/config/avr/avr.cc b/gcc/config/avr/avr.cc index 3544571d3df..7c7736781c8 100644 --- a/gcc/config/avr/avr.cc +++ b/gcc/config/avr/avr.cc @@ -2538,11 +2538,17 @@ avr_print_operand_address (FILE *file, machine_mode /*mode*/, rtx addr) fprintf (file, "+" HOST_WIDE_INT_PRINT_DEC ")", 2 * INTVAL (XEXP (x, 1))); if (AVR_3_BYTE_PC) - if (warning (0, "pointer offset from symbol maybe incorrect")) - { - output_addr_const (stderr, addr); - fprintf (stderr, "\n"); - } + { + location_t loc = avr_insn_location != UNKNOWN_LOCATION + ? avr_insn_location + : input_location; + if (warning_at (loc, 0, "pointer offset from symbol may be" + " incorrect")) + { + output_addr_const (stderr, addr); + fprintf (stderr, "\n"); + } + } } else {