]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
Fix gdb build with -std=gnu++11
authorPedro Alves <palves@redhat.com>
Thu, 13 Jun 2019 07:58:54 +0000 (08:58 +0100)
committerPedro Alves <palves@redhat.com>
Thu, 13 Jun 2019 07:58:54 +0000 (08:58 +0100)
commit66eb1ed3882aa3c54daa2fe24b7479b5ee0538f2
treef38607b4d72c7ca1854215b597930a37c25b2bfb
parente41d1c49a12aab7db33d7ad66d62f7413b8f0480
Fix gdb build with -std=gnu++11

The options framework series broken the build with gcc 4.8, or any
other compiler were we end up forcing -std=gnu++11, causing errors
like these:

 ../../binutils-gdb/gdb/compile/compile.c: In function gdb::option::option_def_group make_compile_options_def_group(compile_options*):
 ../../binutils-gdb/gdb/compile/compile.c:266:44: error: could not convert (const gdb::option::option_def*)(& compile_command_option_defs) from const gdb::option::option_def* to gdb::array_view<const gdb::option::option_def>
    return {compile_command_option_defs, opts};
     ^
   CXX    copying.o
 ../../binutils-gdb/gdb/compile/compile.c:267:1: error: control reaches end of non-void function [-Werror=return-type]
  }
  ^

This is a C++11 vs C++14 difference -- C++14 relaxed the rules for
eliding braces.

This commit fixes it by adding the missing (in C++11) braces.  Tested
with g++ 4.8.

gdb/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

* compile/compile.c (make_compile_options_def_group): Add braces
around array_view initializer.
* thread.c (make_thread_apply_all_options_def_group)
(make_thread_apply_all_options_def_group): Likewise.
gdb/ChangeLog
gdb/compile/compile.c
gdb/thread.c