[gdb/build] Fix build breaker in language.c with gcc 7.5.0
authorTom de Vries <tdevries@suse.de>
Fri, 5 Aug 2022 15:31:43 +0000 (17:31 +0200)
committerTom de Vries <tdevries@suse.de>
Fri, 5 Aug 2022 15:31:43 +0000 (17:31 +0200)
commit99c902690493e35aad16b2083bad34cf79c366bf
treea243c354636d5542b715ebf6c0066a80b8690e14
parent728d5439e3f5e812246237670f5d9dc9f0d97bae
[gdb/build] Fix build breaker in language.c with gcc 7.5.0

When building gdb on openSUSE Leap 15.3, using gcc 7.5.0, I run into:
...
gdb/language.c: In constructor ‘constexpr language_gdbarch::language_gdbarch()’:
gdb/language.c:921:8: error: use of deleted function \
  ‘language_arch_info::language_arch_info(const language_arch_info&)’
 struct language_gdbarch
        ^~~~~~~~~~~~~~~~
In file included from gdbsupport/common-defs.h:104:0,
                 from gdb/defs.h:28,
                 from gdb/language.c:31:
gdb/language.h:95:28: note: declared here
   DISABLE_COPY_AND_ASSIGN (language_arch_info);
                            ^
include/ansidecl.h:342:3: note: in definition of macro \
  ‘DISABLE_COPY_AND_ASSIGN’
   TYPE (const TYPE&) = delete;   \
   ^~~~
gdb/language.c: In function ‘language_gdbarch* get_language_gdbarch(gdbarch*)’:
gdb/language.c:936:22: note: synthesized method ‘constexpr \
  language_gdbarch::language_gdbarch()’ first required here
       l = new struct language_gdbarch;
                      ^~~~~~~~~~~~~~~~
...

This seems to be fixed by this change in the struct language_gdbarch
definition:
...
-  struct language_arch_info arch_info[nr_languages] {};
+  struct language_arch_info arch_info[nr_languages];
...

Tested on x86_64-linux.
gdb/language.c