On Tue, Jun 25, 2013 at 5:44 AM, Nikodemus Siivola <nikodemus@random-state.net> wrote:
On 25 June 2013 05:12, Nic M <nicdevel@gmail.com> wrote:
> I am looking on help on my attempt to implement the feature request for
> 806398. I am not experienced on Common Lisp but hope to use the experience

For reference, this is: https://bugs.launchpad.net/sbcl/+bug/806398,
aka "wanted: SUPERSEDE / OVERWRITE restart for :IF-EXISTS :ERROR ".

(No-one remembers the bug numbers, generally speaking. They and
launchpad links are good for making sure everyone is /really/ talking
about the same thing, but for clear communications naming the bug
makes life easier... :)

Good to know the, will remember that next time I have any questions. 
 
> I choose to attempt this feature request as it has an implementation outline
> by Nikodemus. Attached is a patch of what I have so far. At the moment I am

Didn't take a look at your patch yet, but my outline in the bug has
rather glaring... bug.

It should be

  (tagbody
    :restart
    (return-from open
      ...))

NOT

  (return-from open
    (tagbody
      :restart
      ...))

Thank you for the correction. This resolved that issue and allowed me to build what I got. I will put in more work and should have a much better patch in few days. 
> open-error implementation and so I have it named my-open-error. My question
> is about tagbody, from the spec, it return NIL and enclosing open body with
> it, breaks open as it will return NIL on success instead of a stream. I also
> can't thinking of an alternative as I need the ability to be able to jump to
> the tag established by tagbody from anypoint in open where an error is
> signaled.

...which should also clarify your confusion. Sorry about the thinko!

Cheers,

 -- nikodemus

Nic