gdb: rename gdbarch_tdep struct to fix g++ 4.8 build

After the commit:

  commit 08106042d9f5fdff60c129bf33190639f1a98b2a
  Date:   Thu May 19 13:20:17 2022 +0100

      gdb: move the type cast into gdbarch_tdep

GDB would no longer build using g++ 4.8.  The issue appears to be some
confusion caused by GDB having 'struct gdbarch_tdep', but also a
templated function called 'gdbarch_tdep'.  Prior to the above commit
the gdbarch_tdep function was not templated, and this compiled just
fine.  Note that the above commit compiles just fine with later
versions of g++, so this issue was clearly fixed at some point, though
I've not tried to track down exactly when.

In this commit I propose to fix the g++ 4.8 build problem by renaming
'struct gdbarch_tdep' to 'struct gdbarch_tdep_base'.  This rename
better represents that the struct is only ever used as a base class,
and removes the overloading of the name, which allows GDB to build
with g++ 4.8.

I've also updated the comment on 'struct gdbarch_tdep_base' to fix a
typo, and the comment on the 'gdbarch_tdep' function, to mention that
in maintainer mode a run-time type check is performed.
This commit is contained in:
Andrew Burgess
2022-07-25 12:07:11 +01:00
parent 27121f6740
commit ab25d9bbe4
45 changed files with 60 additions and 57 deletions

View File

@ -43,7 +43,7 @@ struct gdbarch
const struct target_desc * target_desc;
/* target specific vector. */
struct gdbarch_tdep *tdep;
struct gdbarch_tdep_base *tdep;
gdbarch_dump_tdep_ftype *dump_tdep;
/* per-architecture data-pointers. */
@ -258,7 +258,7 @@ struct gdbarch
struct gdbarch *
gdbarch_alloc (const struct gdbarch_info *info,
struct gdbarch_tdep *tdep)
struct gdbarch_tdep_base *tdep)
{
struct gdbarch *gdbarch;