Fix this with gcc 6.3.0, and make the loop variable const while at it:
/home/simark/src/binutils-gdb/gdb/record-full.c: In member function 'virtual int record_full_target::insert_breakpoint(gdbarch*, bp_target_info*)':
/home/simark/src/binutils-gdb/gdb/record-full.c:1789:8: error: types may not be defined in a for-range-declaration [-Werror]
   for (struct record_full_breakpoint &bp : record_full_breakpoints)
gdb/ChangeLog:
	* record-full.c (record_full_target::insert_breakpoint): Remove
	"struct" keyword, add const.
+2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * record-full.c (record_full_target::insert_breakpoint): Remove
+       "struct" keyword, add const.
+
 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
 
        * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
 
   /* Use the existing entries if found in order to avoid duplication
      in record_full_breakpoints.  */
 
-  for (struct record_full_breakpoint &bp : record_full_breakpoints)
+  for (const record_full_breakpoint &bp : record_full_breakpoints)
     {
       if (bp.addr == bp_tgt->placed_address
          && bp.address_space == bp_tgt->placed_address_space)