From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15276 invoked by alias); 18 Sep 2013 14:08:15 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 15259 invoked by uid 89); 18 Sep 2013 14:08:15 -0000 Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 18 Sep 2013 14:08:15 +0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.0 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD autolearn=ham version=3.3.2 X-HELO: mx1.redhat.com Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r8IE8Bsb022249 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Wed, 18 Sep 2013 10:08:11 -0400 Received: from host2.jankratochvil.net (ovpn-116-51.ams2.redhat.com [10.36.116.51]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id r8IE87Eb028097 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Wed, 18 Sep 2013 10:08:09 -0400 Date: Wed, 18 Sep 2013 14:08:00 -0000 From: Jan Kratochvil To: Doug Evans Cc: gdb-patches@sourceware.org Subject: Re: [patchv3 1/5] Mostly code cleanup: Constification Message-ID: <20130918140806.GA9628@host2.jankratochvil.net> References: <20130915193742.GA20411@host2.jankratochvil.net> <21047.33940.998451.19883@ruffy.mtv.corp.google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <21047.33940.998451.19883@ruffy.mtv.corp.google.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-IsSubscribed: yes X-SW-Source: 2013-09/txt/msg00601.txt.bz2 On Tue, 17 Sep 2013 00:22:12 +0200, Doug Evans wrote: > Jan Kratochvil writes: [...] > > - catch_command_errors (symbol_file_add_main, symarg, > > - !batch_flag, RETURN_MASK_ALL); > > + { > > + volatile struct gdb_exception e; > > + > > + TRY_CATCH (e, RETURN_MASK_ALL) > > + { > > + symbol_file_add_main (symarg, !batch_flag); > > + } > > + exception_print (gdb_stderr, e); > > + } > > } > > > > if (corearg && pidarg) > > There is catch_command_errors_const. > Would that work here? I did not know about catch_command_errors_const. You are right the conversion of catch_command_errors* to TRY_CATCH - and later to C++ try {} - is off-topic for this patch. Thanks, Jan gdb/ 2013-09-18 Jan Kratochvil Constification. * main.c (captured_main): Wrap symbol_file_add_main calls with TRY_CATCH. Twice. * symfile.c (symbol_file_add_main_1): Make args parameter const. (symbol_file_add): Make name parameter const. (symbol_file_add_main, symbol_file_add_main_1): Make args parameter const. (symfile_bfd_open): Make name parameter const, rename it to cname. Add variable name. Change their usage accordingly. * symfile.h (symbol_file_add, symfile_bfd_open): Make first parameter const. (symbol_file_add_main): Make args parameter const. --- a/gdb/main.c +++ b/gdb/main.c @@ -957,8 +957,8 @@ captured_main (void *data) catch_command_errors returns non-zero on success! */ if (catch_command_errors (exec_file_attach, execarg, !batch_flag, RETURN_MASK_ALL)) - catch_command_errors (symbol_file_add_main, symarg, - !batch_flag, RETURN_MASK_ALL); + catch_command_errors_const (symbol_file_add_main, symarg, + !batch_flag, RETURN_MASK_ALL); } else { @@ -966,8 +966,8 @@ captured_main (void *data) catch_command_errors (exec_file_attach, execarg, !batch_flag, RETURN_MASK_ALL); if (symarg != NULL) - catch_command_errors (symbol_file_add_main, symarg, - !batch_flag, RETURN_MASK_ALL); + catch_command_errors_const (symbol_file_add_main, symarg, + !batch_flag, RETURN_MASK_ALL); } if (corearg && pidarg) --- a/gdb/symfile.c +++ b/gdb/symfile.c @@ -87,7 +87,7 @@ int readnow_symbol_files; /* Read full symbols immediately. */ static void load_command (char *, int); -static void symbol_file_add_main_1 (char *args, int from_tty, int flags); +static void symbol_file_add_main_1 (const char *args, int from_tty, int flags); static void add_symbol_file_command (char *, int); @@ -1200,8 +1200,8 @@ symbol_file_add_from_bfd (bfd *abfd, int add_flags, loaded file. See symbol_file_add_with_addrs's comments for details. */ struct objfile * -symbol_file_add (char *name, int add_flags, struct section_addr_info *addrs, - int flags) +symbol_file_add (const char *name, int add_flags, + struct section_addr_info *addrs, int flags) { bfd *bfd = symfile_bfd_open (name); struct cleanup *cleanup = make_cleanup_bfd_unref (bfd); @@ -1221,13 +1221,13 @@ symbol_file_add (char *name, int add_flags, struct section_addr_info *addrs, command itself. */ void -symbol_file_add_main (char *args, int from_tty) +symbol_file_add_main (const char *args, int from_tty) { symbol_file_add_main_1 (args, from_tty, 0); } static void -symbol_file_add_main_1 (char *args, int from_tty, int flags) +symbol_file_add_main_1 (const char *args, int from_tty, int flags) { const int add_flags = (current_inferior ()->symfile_flags | SYMFILE_MAINLINE | (from_tty ? SYMFILE_VERBOSE : 0)); @@ -1652,31 +1652,31 @@ gdb_bfd_open_maybe_remote (const char *name) absolute). In case of trouble, error() is called. */ bfd * -symfile_bfd_open (char *name) +symfile_bfd_open (const char *cname) { bfd *sym_bfd; int desc; - char *absolute_name; + char *name, *absolute_name; struct cleanup *back_to; - if (remote_filename_p (name)) + if (remote_filename_p (cname)) { - sym_bfd = remote_bfd_open (name, gnutarget); + sym_bfd = remote_bfd_open (cname, gnutarget); if (!sym_bfd) - error (_("`%s': can't open to read symbols: %s."), name, + error (_("`%s': can't open to read symbols: %s."), cname, bfd_errmsg (bfd_get_error ())); if (!bfd_check_format (sym_bfd, bfd_object)) { make_cleanup_bfd_unref (sym_bfd); - error (_("`%s': can't read symbols: %s."), name, + error (_("`%s': can't read symbols: %s."), cname, bfd_errmsg (bfd_get_error ())); } return sym_bfd; } - name = tilde_expand (name); /* Returns 1st new malloc'd copy. */ + name = tilde_expand (cname); /* Returns 1st new malloc'd copy. */ /* Look down path for it, allocate 2nd new malloc'd copy. */ desc = openp (getenv ("PATH"), OPF_TRY_CWD_FIRST | OPF_RETURN_REALPATH, name, --- a/gdb/symfile.h +++ b/gdb/symfile.h @@ -477,7 +477,7 @@ enum symfile_add_flags extern void new_symfile_objfile (struct objfile *, int); -extern struct objfile *symbol_file_add (char *, int, +extern struct objfile *symbol_file_add (const char *, int, struct section_addr_info *, int); extern struct objfile *symbol_file_add_from_bfd (bfd *, int, @@ -528,7 +528,7 @@ extern void set_initial_language (void); extern void find_lowest_section (bfd *, asection *, void *); -extern bfd *symfile_bfd_open (char *); +extern bfd *symfile_bfd_open (const char *); extern bfd *gdb_bfd_open_maybe_remote (const char *); @@ -572,7 +572,7 @@ extern CORE_ADDR overlay_unmapped_address (CORE_ADDR, struct obj_section *); extern CORE_ADDR symbol_overlayed_address (CORE_ADDR, struct obj_section *); /* Load symbols from a file. */ -extern void symbol_file_add_main (char *args, int from_tty); +extern void symbol_file_add_main (const char *args, int from_tty); /* Clear GDB symbol tables. */ extern void symbol_file_clear (int from_tty);