# Pre-RFC: Remove Rust's dependency on Visual Studio in 4 (...complex?) steps

**URL:** <https://internals.rust-lang.org/t/pre-rfc-remove-rusts-dependency-on-visual-studio-in-4-complex-steps/16708>\
**Category:** compiler\
**Created:** [May 28, 2022, 11:14pm UTC](https://internals.rust-lang.org/t/pre-rfc-remove-rusts-dependency-on-visual-studio-in-4-complex-steps/16708 "2022-05-28T23:14:52Z")\
**Posts on this page:** 1\
**Showing post:** 12

<div class="post-metadata">

**Author:** ![bjorn3](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/bjorn3/32/2736_2.png) [@bjorn3](https://internals.rust-lang.org/u/bjorn3)\
**Post date:** [June 1, 2022, 2:59pm UTC](https://internals.rust-lang.org/t/pre-rfc-remove-rusts-dependency-on-visual-studio-in-4-complex-steps/16708/12 "2022-06-01T14:59:53Z")

</div>

> [@simonbuchan](#):
>
> Do you mean existing C++ libraries built against vcruntime would not have the personality function they expect available at link? Or that C++ code built as part of a crate would need to use the same personality?

Both

> [@simonbuchan](#):
>
> Either way, throwing across FFI is still UB

`extern "C-unwind"` may be stabilized in the near future. Throwing across `extern "C-unwind"` is fully allowed and in fact the reason this ABI has been introduced.

---

_[View the full topic](https://internals.rust-lang.org/t/pre-rfc-remove-rusts-dependency-on-visual-studio-in-4-complex-steps/16708)._
