Open Sourcing MSVC’s STL

(https://devblogs.microsoft.com/cppblog/open-sourcing-msvcs-stl/)

Is this what I think it is. Does this clear the path for a full Rust LLVM toolchain for Windows without the hustle of building a new system library?

I hope it is, that would be huge!

Cheers!

Yup, this is MSVC's counterpart to LLVM's libc++. On the other hand, I don't see how this changes much in that libc++ already supports Windows. (If _LIBCPP_WIN32API is defined, which is default on Windows, libc++ uses Win32 instead of POSIX. Support is rather complete.)

As far as I recall there is still work to be done in order to replace the msvc toolchain for windows. I can't find the thread anymore but it was about the linker not having all the necessary dependencies available to link to. Even if you where to use the LLVM linker and system library.

I was hoping that open sourcing MSVC STL would help quite a bit with that problem.

I don't know what missing piece you are referring to, but then as I understand this is not it. microsoft/STL and libc++ w/ _LIBCPP_WIN32API is more or less equivalent so it probably won't help any.

This is just the C++ standard library, which doesn't matter for Rust because we don't link to the C++ standard library anyway!

If you're interested in a pure Rust toolchain that does not depend on an external C/C++ toolchain, then the actual hurdle is the ability to link to system libraries without import libraries. There's already an accepted RFC and it is just waiting for someone to finish the implementation: https://github.com/rust-lang/rust/issues/58713

5 Likes

That must've been it. Okay, my bad then.