Have global_block inherit from block
authorTom Tromey <tom@tromey.com>
Fri, 20 Jan 2023 14:14:46 +0000 (07:14 -0700)
committerTom Tromey <tom@tromey.com>
Sun, 19 Feb 2023 19:51:06 +0000 (12:51 -0700)
This changes global_block to inherit from block, which is what was
always intended.

gdb/block.c
gdb/block.h

index 8f15cdf23f8d740e830bb6de099d7d5f5c6a1652..1698ee51e7bf6fda79940543089a2e2bdb157493 100644 (file)
@@ -397,9 +397,7 @@ allocate_block (struct obstack *obstack)
 struct block *
 allocate_global_block (struct obstack *obstack)
 {
-  struct global_block *bl = new (obstack) struct global_block;
-
-  return &bl->block;
+  return new (obstack) struct global_block;
 }
 
 /* See block.h.  */
index 9a60140581dab1756d52635f2ba90ee872fed785..3d71e7daab1409e42bfe90cc16cc2953c78d03f7 100644 (file)
@@ -314,12 +314,8 @@ private:
 /* The global block is singled out so that we can provide a back-link
    to the compunit symtab.  */
 
-struct global_block : public allocate_on_obstack
+struct global_block : public block
 {
-  /* The block.  */
-
-  struct block block;
-
   /* This holds a pointer to the compunit symtab holding this block.  */
 
   struct compunit_symtab *compunit_symtab = nullptr;