/* Shared library declarations for GDB, the GNU Debugger.
- Copyright (C) 1990-2020 Free Software Foundation, Inc.
+ Copyright (C) 1990-2022 Free Software Foundation, Inc.
This file is part of GDB.
/* For domain_enum domain. */
#include "symtab.h"
#include "gdb_bfd.h"
-
-#define ALL_SO_LIBS(so) \
- for (so = so_list_head; \
- so != NULL; \
- so = so->next)
+#include "target-section.h"
/* Base class for target-specific link map information. */
the file cannot be found or after the command "nosharedlibrary". */
struct objfile *objfile;
- struct target_section *sections;
- struct target_section *sections_end;
+ target_section_table *sections;
/* Record the range of addresses belonging to this shared library.
There may not be just one (e.g. if two segments are relocated
void (*handle_event) (void);
};
+using so_list_range = next_range<so_list>;
+
/* Free the memory associated with a (so_list *). */
void free_so (struct so_list *so);
/* A unique pointer to a so_list. */
typedef std::unique_ptr<so_list, so_deleter> so_list_up;
-/* Return address of first so_list entry in master shared object list. */
-struct so_list *master_so_list (void);
-
/* Find main executable binary file. */
extern gdb::unique_xmalloc_ptr<char> exec_file_find (const char *in_pathname,
int *fd);