Change file initialization to use INIT_GDB_FILE macro

This patch introduces a new macro, INIT_GDB_FILE.  This is used to
replace the current "_initialize_" idiom when introducing a per-file
initialization function.  That is, rather than write:

    void _initialize_something ();
    void
    _initialize_something ()
    {
       ...
    }

... now you would write:

    INIT_GDB_FILE (something)
    {
       ...
    }

The macro handles both the declaration and definition of the function.

The point of this approach is that it makes it harder to accidentally
cause an initializer to be omitted; see commit 2711e475 ("Ensure
cooked_index_entry self-tests are run").  Specifically, the regexp now
used by make-init-c seems harder to trick.

New in v2: un-did some erroneous changes made by the script.

The bulk of this patch was written by script.
Regression tested on x86-64 Fedora 41.
This commit is contained in:
Tom Tromey
2025-05-22 11:54:16 -06:00
parent cdf176bebc
commit 5fe70629ce
429 changed files with 448 additions and 1312 deletions

View File

@@ -1751,9 +1751,7 @@ show_user_1 (struct cmd_list_element *c, const char *prefix, const char *name,
}
void _initialize_cli_script ();
void
_initialize_cli_script ()
INIT_GDB_FILE (cli_script)
{
struct cmd_list_element *c;