Remove symbol-related static asserts
authorTom Tromey <tromey@adacore.com>
Mon, 11 Nov 2019 14:43:13 +0000 (07:43 -0700)
committerTom Tromey <tromey@adacore.com>
Wed, 13 Nov 2019 19:52:40 +0000 (12:52 -0700)
commit 3573abe1d added static asserts to ensure that symbol sizes
don't vary.  However, this failed to build on Windows, on at least one
ARM platform (see PR build/25182) and internally at AdaCore for PPC.

So, I think it is probably best to just remove these assertions,
effectively reverting 3573abe1d.

gdb/ChangeLog
2019-11-13  Tom Tromey  <tromey@adacore.com>

PR build/25182:
* psympriv.h (partial_symbol): Remove static assert.
* symtab.h (general_symbol_info, symbol): Remove static assert.

Change-Id: I51940fb2240c474838b48494b5072081701789bb

gdb/ChangeLog
gdb/psympriv.h
gdb/symtab.h

index 4f40ea82ee9c4e3727a1a442eec3c81a6ecce64f..be4c5a51f1360041cfdee269f3ef46a4604ba597 100644 (file)
@@ -1,3 +1,9 @@
+2019-11-13  Tom Tromey  <tromey@adacore.com>
+
+       PR build/25182:
+       * psympriv.h (partial_symbol): Remove static assert.
+       * symtab.h (general_symbol_info, symbol): Remove static assert.
+
 2019-11-12  Andrew Burgess  <andrew.burgess@embecosm.com>
 
        * gdbsupport/format.c (format_pieces::format_pieces): Support
index c81261a38f6b163b973b028609fc1604fdbd2de4..19d692bd230e7019481d1deb9f480d00e755af6d 100644 (file)
@@ -82,12 +82,6 @@ struct partial_symbol
   ENUM_BITFIELD(address_class) aclass : SYMBOL_ACLASS_BITS;
 };
 
-/* This struct is size-critical (see comment at the to of symtab.h), so this
-   assert makes sure the size doesn't change accidentally.  Be careful when
-   purposely increasing the size.  */
-gdb_static_assert ((sizeof (void *) == 8 && sizeof (partial_symbol) == 40)
-                  || (sizeof (void *) == 4 && sizeof (partial_symbol) == 24));
-
 /* A convenience enum to give names to some constants used when
    searching psymtabs.  This is internal to psymtab and should not be
    used elsewhere.  */
index 390aee4218b8ea0e89cf615fb5ccd074e9c4a9e3..a6bd3c44b806fd323b79c5452d3153ac443f96af 100644 (file)
@@ -447,13 +447,6 @@ struct general_symbol_info
   short section;
 };
 
-/* This struct is size-critical (see comment at the top), so this assert
-   makes sure the size doesn't change accidentally.  Be careful when
-   purposely increasing the size.  */
-gdb_static_assert ((sizeof (void *) == 8 && sizeof (general_symbol_info) == 32)
-                  || (sizeof (void *) == 4
-                      && sizeof (general_symbol_info) == 20));
-
 extern void symbol_set_demangled_name (struct general_symbol_info *,
                                       const char *,
                                        struct obstack *);
@@ -1204,12 +1197,6 @@ struct symbol : public general_symbol_info, public allocate_on_obstack
   struct symbol *hash_next = nullptr;
 };
 
-/* This struct is size-critical (see comment at the top), so this assert
-   makes sure the size doesn't change accidentally.  Be careful when
-   purposely increasing the size.  */
-gdb_static_assert ((sizeof (void *) == 8 && sizeof (symbol) == 72)
-                  || (sizeof (void *) == 4 && sizeof (symbol) == 40));
-
 /* Several lookup functions return both a symbol and the block in which the
    symbol is found.  This structure is used in these cases.  */