aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPaul Eggert2013-07-11 00:17:23 -0700
committerPaul Eggert2013-07-11 00:17:23 -0700
commit9c203066b952a8cd446464b384d2bec9be9355c5 (patch)
treeb085b144bb0c1b4aea1c034cf7598fa019f714bc /src
parenta43d577e485424c5352fe551e34fa35ea2724124 (diff)
downloademacs-9c203066b952a8cd446464b384d2bec9be9355c5.tar.gz
emacs-9c203066b952a8cd446464b384d2bec9be9355c5.zip
* eval.c (backtrace_function, backtrace_args): Now EXTERNALLY_VISIBLE.
This is for .gdbinit xbacktrace.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog3
-rw-r--r--src/eval.c15
2 files changed, 12 insertions, 6 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index cd109c17f18..7b54b6195a9 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,8 @@
12013-07-11 Paul Eggert <eggert@cs.ucla.edu> 12013-07-11 Paul Eggert <eggert@cs.ucla.edu>
2 2
3 * eval.c (backtrace_function, backtrace_args): Now EXTERNALLY_VISIBLE.
4 This is for .gdbinit xbacktrace.
5
3 * sysdep.c, term.c, termcap.c, terminal.c: Integer-related minor fixes. 6 * sysdep.c, term.c, termcap.c, terminal.c: Integer-related minor fixes.
4 * sysdep.c (emacs_get_tty): Return void, since nobody uses the value. 7 * sysdep.c (emacs_get_tty): Return void, since nobody uses the value.
5 (emacs_set_tty): Now static. 8 (emacs_set_tty): Now static.
diff --git a/src/eval.c b/src/eval.c
index d3545add21d..31a774b9d27 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -114,6 +114,13 @@ Lisp_Object Vsignaling_function;
114 frame is half-initialized. */ 114 frame is half-initialized. */
115Lisp_Object inhibit_lisp_code; 115Lisp_Object inhibit_lisp_code;
116 116
117/* These would ordinarily be static, but they need to be visible to GDB. */
118bool backtrace_p (union specbinding *) EXTERNALLY_VISIBLE;
119Lisp_Object *backtrace_args (union specbinding *) EXTERNALLY_VISIBLE;
120Lisp_Object backtrace_function (union specbinding *) EXTERNALLY_VISIBLE;
121union specbinding *backtrace_next (union specbinding *) EXTERNALLY_VISIBLE;
122union specbinding *backtrace_top (void) EXTERNALLY_VISIBLE;
123
117static Lisp_Object funcall_lambda (Lisp_Object, ptrdiff_t, Lisp_Object *); 124static Lisp_Object funcall_lambda (Lisp_Object, ptrdiff_t, Lisp_Object *);
118static Lisp_Object apply_lambda (Lisp_Object fun, Lisp_Object args); 125static Lisp_Object apply_lambda (Lisp_Object fun, Lisp_Object args);
119 126
@@ -152,7 +159,7 @@ specpdl_func (union specbinding *pdl)
152 return pdl->unwind.func; 159 return pdl->unwind.func;
153} 160}
154 161
155static Lisp_Object 162Lisp_Object
156backtrace_function (union specbinding *pdl) 163backtrace_function (union specbinding *pdl)
157{ 164{
158 eassert (pdl->kind == SPECPDL_BACKTRACE); 165 eassert (pdl->kind == SPECPDL_BACKTRACE);
@@ -166,7 +173,7 @@ backtrace_nargs (union specbinding *pdl)
166 return pdl->bt.nargs; 173 return pdl->bt.nargs;
167} 174}
168 175
169static Lisp_Object * 176Lisp_Object *
170backtrace_args (union specbinding *pdl) 177backtrace_args (union specbinding *pdl)
171{ 178{
172 eassert (pdl->kind == SPECPDL_BACKTRACE); 179 eassert (pdl->kind == SPECPDL_BACKTRACE);
@@ -205,10 +212,6 @@ set_backtrace_debug_on_exit (union specbinding *pdl, bool doe)
205 212
206/* Helper functions to scan the backtrace. */ 213/* Helper functions to scan the backtrace. */
207 214
208bool backtrace_p (union specbinding *) EXTERNALLY_VISIBLE;
209union specbinding *backtrace_top (void) EXTERNALLY_VISIBLE;
210union specbinding *backtrace_next (union specbinding *pdl) EXTERNALLY_VISIBLE;
211
212bool 215bool
213backtrace_p (union specbinding *pdl) 216backtrace_p (union specbinding *pdl)
214{ return pdl >= specpdl; } 217{ return pdl >= specpdl; }