aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/psymtab.c11
-rw-r--r--gdb/symfile.c11
3 files changed, 16 insertions, 12 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index ac64f5c..6d61a2c 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,11 @@
2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
+ * psymtab.c (partial_symtab::partial_symtab): Change
+ last_objfile_name to be an std::string.
+ * symfile.c (allocate_symtab): Likewise.
+
+2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
+
* objfiles.h (struct objfile_per_bfd_storage) <intern>: New
methods.
(struct objfile) <intern>: Use
diff --git a/gdb/psymtab.c b/gdb/psymtab.c
index b51881d..26ea35e 100644
--- a/gdb/psymtab.c
+++ b/gdb/psymtab.c
@@ -1574,16 +1574,15 @@ partial_symtab::partial_symtab (const char *filename_,
{
/* Be a bit clever with debugging messages, and don't print objfile
every time, only when it changes. */
- static char *last_objfile_name = NULL;
+ static std::string last_objfile_name;
+ const char *this_objfile_name = objfile_name (objfile);
- if (last_objfile_name == NULL
- || strcmp (last_objfile_name, objfile_name (objfile)) != 0)
+ if (last_objfile_name.empty () || last_objfile_name != this_objfile_name)
{
- xfree (last_objfile_name);
- last_objfile_name = xstrdup (objfile_name (objfile));
+ last_objfile_name = this_objfile_name;
fprintf_filtered (gdb_stdlog,
"Creating one or more psymtabs for objfile %s ...\n",
- last_objfile_name);
+ this_objfile_name);
}
fprintf_filtered (gdb_stdlog,
"Created psymtab %s for module %s.\n",
diff --git a/gdb/symfile.c b/gdb/symfile.c
index b71eb19..6734511 100644
--- a/gdb/symfile.c
+++ b/gdb/symfile.c
@@ -2770,16 +2770,15 @@ allocate_symtab (struct compunit_symtab *cust, const char *filename)
{
/* Be a bit clever with debugging messages, and don't print objfile
every time, only when it changes. */
- static char *last_objfile_name = NULL;
+ static std::string last_objfile_name;
+ const char *this_objfile_name = objfile_name (objfile);
- if (last_objfile_name == NULL
- || strcmp (last_objfile_name, objfile_name (objfile)) != 0)
+ if (last_objfile_name.empty () || last_objfile_name != this_objfile_name)
{
- xfree (last_objfile_name);
- last_objfile_name = xstrdup (objfile_name (objfile));
+ last_objfile_name = this_objfile_name;
fprintf_filtered (gdb_stdlog,
"Creating one or more symtabs for objfile %s ...\n",
- last_objfile_name);
+ this_objfile_name);
}
fprintf_filtered (gdb_stdlog,
"Created symtab %s for module %s.\n",