diff options
author | Simon Marchi <simon.marchi@ericsson.com> | 2014-12-15 11:38:03 -0500 |
---|---|---|
committer | Simon Marchi <simon.marchi@ericsson.com> | 2014-12-15 11:40:00 -0500 |
commit | 38bcc89d48a20af944fe0d51eff3980f7dc8a88e (patch) | |
tree | 7375d3dd9a01fad783811546cd0e17b234751ad9 /gdb/event-top.h | |
parent | 89ed8ea187a460bc746a41f08fa8ee986716743b (diff) | |
download | binutils-gdb-38bcc89d48a20af944fe0d51eff3980f7dc8a88e.tar.gz |
Fix build with Python 3.4 (PR python/16784)
The type of the function pointer PyOS_ReadlineFunctionPointer (part of the
Python C API), which we use, slightly changed starting with Python 3.4. The
signature went from
PyAPI_DATA(char) *(*PyOS_ReadlineFunctionPointer)(FILE *, FILE *, char *);
to
PyAPI_DATA(char) *(*PyOS_ReadlineFunctionPointer)(FILE *, FILE *, const char *);
The parameter that changed is the prompt text.
This commits adjust gdb accordingly by making the prompt_arg parameter
const, as well as the fallouts of that. I needed to rework how
annotations are added to the prompt, since the it is now const. If
annotations are enabled, it will make a copy of the prompt overwrite the
prompt variable that is used throughout the function. Otherwise, no copy
is done and the original prompt_arg value is passed.
I changed the signature of deprecated_readline_hook. I would've changed any
user of it, but it seems like nothing is using it,
Built-tested with python 2.7.x, 3.3.y and 3.4.z.
gdb/ChangeLog:
* defs.h (gdb_readline): Constify argument.
(gdb_readline_wrapper): Same.
(command_line_input): Same.
(deprecated_readline_hook): Same.
* top.c (deprecated_readline_hook): Same.
(gdb_readline): Same.
(gdb_readline_wrapper): Same.
(command_line_input): Constify argument. Pass prompt to
called functions instead of local_prompt, overwriting prompt
if using annotations.
* event-top.h (display_gdb_prompt): Constify argument.
* event-top.c (display_gdb_prompt): Same.
* python/py-gdb-readline.c (gdbpy_readline_wrapper): Constify
argument if building with Python 3.4 and up.
Signed-off-by: Simon Marchi <simon.marchi@ericsson.com>
Diffstat (limited to 'gdb/event-top.h')
-rw-r--r-- | gdb/event-top.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gdb/event-top.h b/gdb/event-top.h index 919287e6f34..0c8baae2780 100644 --- a/gdb/event-top.h +++ b/gdb/event-top.h @@ -27,7 +27,7 @@ struct cmd_list_element; /* Exported functions from event-top.c. FIXME: these should really go into top.h. */ -extern void display_gdb_prompt (char *new_prompt); +extern void display_gdb_prompt (const char *new_prompt); void gdb_setup_readline (void); void gdb_disable_readline (void); extern void async_init_signals (void); |