From 8e96694e31aedc28a4e2a00b28099158a8bd4a5a Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Mon, 25 Nov 2013 07:40:05 -0700 Subject: [PATCH] make symtab::dirname const This makes symtab::dirname const and updates one spot to avoid an intermediate constless result. 2013-12-06 Tom Tromey * buildsym.c (end_symtab_from_static_block): Use obstack_copy0. * symtab.h (struct symtab) : Now const. --- gdb/ChangeLog | 5 +++++ gdb/buildsym.c | 8 ++++---- gdb/symtab.h | 2 +- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 33366e2d819..9cec9c33b2f 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2013-12-06 Tom Tromey + + * buildsym.c (end_symtab_from_static_block): Use obstack_copy0. + * symtab.h (struct symtab) : Now const. + 2013-12-06 Tom Tromey * symfile.c (allocate_symtab): Remove cast. diff --git a/gdb/buildsym.c b/gdb/buildsym.c index 0326e264aba..8d9bdb14966 100644 --- a/gdb/buildsym.c +++ b/gdb/buildsym.c @@ -1204,10 +1204,10 @@ end_symtab_from_static_block (struct block *static_block, if (subfile->dirname) { /* Reallocate the dirname on the symbol obstack. */ - symtab->dirname = (char *) - obstack_alloc (&objfile->objfile_obstack, - strlen (subfile->dirname) + 1); - strcpy (symtab->dirname, subfile->dirname); + symtab->dirname = + obstack_copy0 (&objfile->objfile_obstack, + subfile->dirname, + strlen (subfile->dirname)); } else { diff --git a/gdb/symtab.h b/gdb/symtab.h index 821479ac7b6..3be85cae739 100644 --- a/gdb/symtab.h +++ b/gdb/symtab.h @@ -879,7 +879,7 @@ struct symtab /* Directory in which it was compiled, or NULL if we don't know. */ - char *dirname; + const char *dirname; /* Total number of lines found in source file. */ -- 2.30.2