[rust-dev] Met with a terrible fate

Alex Crichton alex at crichton.co
Wed Jul 2 18:23:40 PDT 2014


If you touch runtime services (such as those mentioned by Benjamin),
it is assume that a Rust Task [1] is available. In your case, you're
touching the unwinding service, but you have no set a catch-point for
the call to unwinding anywhere. This sounds like you're triggering a
failure without a task. This is akin to throwing a C++ exception
without a try/catch block on the stack.

You may wish to explore the std::rt::unwind [2] module, specifically
the try function [3], but keep in mind that it is unsafe and you must
be careful about what you're doing (the documentation explains this).

I love getting the runtime running in nonstandard locations, so if you
have any trouble, feel free to ping me on IRC! My nick is acrichto.


[1]: http://doc.rust-lang.org/std/rt/task/struct.Task.html
[2]: http://doc.rust-lang.org/std/rt/unwind/
[3]: http://doc.rust-lang.org/std/rt/unwind/fn.try.html

On Wed, Jul 2, 2014 at 6:07 PM, Isak Andersson <contact at bitpuffin.com> wrote:
> Hello!
>
> I have written a library in Rust that has some pub extern fv's in it so that
> they are callable from C. I wrote a C program to try calling these functions
> and I was met with the following message:
>
> % ./test
>
> You've met with a terrible fate, haven't you?
>
> fatal runtime error: Could not unwind stack, error = 5
> zsh: illegal hardware instruction  ./test
>
> To begin with, nice reference!
>
> Second of all. How do I fix this, I am guessing that I need to start the
> rust runtime or something but I don't know how to do this, if someone could
> point me in the right direction that would be great!
>
> If you need more specific code examples of what I'm doing I can provide it
> it's just that I'm gonna sleep now and it doesn't seem like that's all too
> relevant. Also I did link to the libraries in the order it told me to.
>
> Cheers!
>
> Isak Andersson
>
> _______________________________________________
> Rust-dev mailing list
> Rust-dev at mozilla.org
> https://mail.mozilla.org/listinfo/rust-dev
>


More information about the Rust-dev mailing list