guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Export scm_i_with_continuation_barrier?


From: Doug Evans
Subject: Export scm_i_with_continuation_barrier?
Date: Tue, 18 Feb 2014 22:38:02 -0800

I realize the _i_ will have to be replaced, and the name
scm_c_with_continuation_barrier is already taken, however,
I found in writing gdb/guile/scm-safe-call.c that
scm_i_with_continuation_barrier is exactly what I need.  Since it's
not available I had to do two levels of calls where one should
suffice.

Here's what I'd like:

scm_foo_with_continuation_barrier (
  my_body, &body_data,
  my_handler, &handler_data,
  my_pre_unwind_handler, &pre_unwind_handler_data);

Since I don't have that I have to do something more complicated.
I'm currently experimenting with
scm_with_guile -> scm_c_with_continuation_barrier -> scm_c_catch.

[what's currently checked into the gdb tree is a work in progress.
blech - I thought I had resolved this but I can see I'm lacking any
continuation barriers]

The current scm_c_with_continuation_barrier is nasty because it uses
continuations.c:pre_unwind_handler which will print the exception ...
but I don't want Guile to print the exception - I want to control
if/when it's printed.  I also don't want continuations.c:c_handler - I
don't want a throw of 'quit to terminate gdb.

What I want is all the functionality of scm_c_catch and all the
functionality of scm_c_with_continuation_barrier ... which is exactly
what scm_i_with_continuation_barrier is.

So ... any chance in exporting scm_i_with_continuation_barrier?
[renamed of course :-)]
How about scm_c_catch_with_continuation_barrier?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]