tux3 3 days ago

The rumor that has been widely circulating is that the MSVC backend is being reused as a code generator for the Rust compiler (because nobody really understands PDBs anymore, not even Microsoft, and especially LLVM doesn't. So rustc could be a MSVC frontend instead to reuse all the existing arcane logic.)

MSVC will continue to be used for many years, and especially the backend might see renewed effort. But I don't know about the C++ frontend specifically, I've seen complaints about more and more bugs on the cpp subreddit. It's possible MS will be investing a little less in C++.

1
pjmlp 3 days ago

Disregarding the rumor, it is quite public information that on Azure side, C and C++ are now only allowed for existing code bases, or scenarios where nothing else is available.

Meanwhile on Windows side, it was made officially at Ignite that a similar decision is now to be followed upon Windows as well.

Here the official stuff, so whatever happens to MSVC is secondary,

https://azure.microsoft.com/fr-fr/blog/microsoft-azure-secur...

https://blogs.windows.com/windowsexperience/2024/11/19/windo...

_huayra_ 3 days ago

> in alignment with the Secure Future Initiative, we are adopting safer programming languages, gradually moving functionality from C++ implementation to Rust.

This seems like one hell of an initiative for the Windows OS. That is millions of lines of C++ code, often with parts from waaay back. A friend who works on one of the OS teams told me that his team got a boomerang hire that worked on Windows back in the 90s and he was still finding parts of his code in there!

I hope this corporate interest bodes well for Rust though. It seems like for C++ it really caused a schism over the ABI break issue where Chandler et al were basically rebuffed finding some timeline to break it, and then Google dropped all their support on the committee in favor of Carbon, Rust, etc.

pjmlp 3 days ago

Apple and Google focusing on their own stuff, is one of the reasons why clang lost velocity in ISO C++ adoption, most of the C++ compiler vendors that fork clang don't contribute frontend stuff only LLVM, and with them out, it took some time until new folks jumped in to replace their contributions.

Likewise you will noticed MSVC is no longer riding the wave in regards to C++23, after being the first to fully support C++20.

Then there are all those other compilers out there, lost somewhere between C++14 and C++17, and most likely never moving beyond that.

nitwit005 2 days ago

They've made statements like that for a long time now. But they've never escaped using C++ when performance matters. The game dev roles very clearly ask for C++, for example.

Rather, it seems that as computers have gotten faster, there's been more places where safety is preferable to performance.

pjmlp 2 days ago

The proof is on the pudding, how performance critical do you consider Pluton firmware, network cards firmware supporting Azure workloads?

Two examples of stuff publicly rewritten into Rust.

Games are special that isn't what Windows security cares about in first instance, when TinyGlade is the first ever commercial success using Rust.

Yet most games are done with Unreal and Unity, and yes there is lots of C++ there, but is mostly Blueprints, Verse, C# on top, that large majority of studios reach for.

nitwit005 1 day ago

I have no magic window into Microsoft, but they've been saying they need to stop writing C++ for genuine decades now, and it's still prominent on their jobs site with new projects.

I'm aware they're trying, but I just don't believe their statements from the evidence available.