On 03/07/2013 04:22 PM, Pedro Alves wrote: > > I didn't get past the first hunk in the patch. :-) Gah! That's what happens (sometimes) when you get too used to making mechanical changes. My apologies! > Your patch seems to make sym_name unused, even. There may be > more instances of this in the patch. /me off to bed. :-) I *think* that's the only one. The only other places where a less-than-mechanical change is made is watch_command_1 (which is one hairy beast), find_condition_and_thread (which is still pretty trivial), and the tracepoint.c changes (which are almost as much a hairy beast). So, allow me try again. Thank you! [And sleep well; this will be in your INBOX in the morning. :-P] Keith ChangeLog 2013-03-07 Keith Seitz * ada-lang.c (ada_read_renaming_var_value): Pass const pointer to expression string to parse_exp_1. (craete_excep_cond_exprs): Likewise. * ax-gdb.c (agent_eval_command_one): Likewise. (maint_agent_printf_command): Likewise. Constify much of the string handling/parsing. * breakpoint.c (set_breakpoint_condition): Pass const pointer to expression string to parse_exp_1. (update_watchpoint): Likewise. (parse_cmd_to_aexpr): Constify string handling. Pass const pointer to parse_exp_1. (init_breakpoint_sal): Pass const pointer to parse_exp_1. (find_condition_and_thread): Likewise. Make TOK const. (watch_command_1): Constify string handling. (update_breakpoint_location): Pass const pointer to parse_exp_1. * eval.c (parse_and_eval_address): Make EXP const. (parse_to_comma_and_eval): Make EXPP const. * expression.h (parse_expression): Make argument const. (parse_exp_1): Make first argument const. * findcmd.c (parse_find_args): Treat ARGS as const. * linespec.c (parse_linespec): Pass const pointer to linespec_expression_to_pc. (linespec_expression_to_pc): Make EXP_PTR const. * parse.c (parse_exp_1): Make STRINGPTR const. Make a copy of the expression to pass to parse_exp_in_context until this whole interface can be constified. (parse_expression): Make STRING const. * printcmd.c (ui_printf): Treat ARG as const. Handle const strings. * tracepoint.c (validate_actionline): Pass const pointer to all calls to parse_exp_1. (encode_actions_1): Likewise. * value.h (parse_to_comma_and_eval): Make argument const. (parse_and_eval_address): Likewise. * varobj.c (varobj_create): Pass const pointer to parse_exp_1. (varobj_set_value): Likewise. * cli/cli-cmds.c (disassemble_command): Treat ARG as const and constify string handling. Pass const pointers to parse_and_eval_address and parse_to_comman_and_eval. * cli/cli-utils.c (skip_to_space): Rename to ... (skip_to_space_const): ... this. Handle const strings. * cli/cli-utils.h (skip_to_space): Turn into macro which invokes skip_to_space_const. (skip_to_space_const): Declare. * common/format.c (parse_format_string): Make ARG const. Handle const strings. * common/format.h (parse_format_string): Make ARG const. * gdbserver/ax.c (ax_printf): Make FORMAT const.