Why libc++ isn't available under Windows by default? - windows

What's the technical reason(s) for Clang not come with a libc++ implementation for Windows environments, and instead rely on the GGC, MSVC or others Standard Library implementation?

Related

Is it the C++20 module and range is completely available in all compilers ( MSVC, CLang, GCC)

I am trying to find an official document to show to my team that We are good to use c++20 now. But There is no document mentioned that all compiler already fully support the c++20. so Should I use C++20 for the new project.
I would use the C++ reference website to see what is supported in what toolchains (and what versions), the modules might not be as widely supported as you would hope. However, if you know exactly what tools you and your team are using and you know exactly what parts of the standard you want (and what risks it involves), then you could theoretically use some parts of the standard.
For myself, I will be using modules on my own projects wherever I can, but it feels to me too early to propose it in a team.
Modules(P1103R3)
GCC 11 partial
Clang 8 partial
MSVC 19.0 (VS 2015) partial, 19.10 (VS 2017) TS only, 19.28 (VS 2019) 16.8
Apple Clang 10.0.1 partial (Xcode 10.2 10E125, Xcode 10.2.1 10E1001, Xcode 10.3 10G8)
EDG eccp no
Intel C++ no
IBM XLC++ no
Sun/Oracle C++ no
Embarcadero C++ Builder no
Cray no
Nvidia HPC C++ (ex Portland Group/PGI) no
Nvidia nvcc no
References:
https://en.cppreference.com/w/cpp/compiler_support
GCC
C++20 core language support status(complete as of 11.0, except part of modules)
https://gcc.gnu.org/projects/cxx-status.html#cxx20
Clang
https://clang.llvm.org/cxx_status.html#cxx20
https://libcxx.llvm.org/docs/Cxx2aStatus.html
Apple Clang
https://developer.apple.com/documentation/xcode-release-notes
MSVS
https://github.com/microsoft/STL/wiki/Changelog
https://devblogs.microsoft.com/cppblog/cpp17-20-features-and-fixes-in-vs-2019/
Range
I'm not sure which one you are meaning, this one?
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0896r4.pdf
Then that's supported:
GCC 10 yes
Clang 13 partial
MSVC 19.29 yes (VS 2019 16.10)
Apple Clang no
EDG eccp no
Intel C++ no
IBM XLC++ no
Sun/Oracle C++ no
Embarcadero C++ Builder no
Cray no
Nvidia HPC C++ (ex Portland Group/PGI) no
Nvidia nvcc no

I am using CLION w/ MinGW 3.2, is this ideal for C++11?

I am a student but this is a more general question and not related to any HW
I am using CLION with MinGW 3.2 and CMake 3.2.2 Is this ideal for C++11? Or better phrased is this at minimum compatible and will not crash for most C++11 features?
A lot of my classmates are having issues compiling or getting crashes, my instructor suggested due to many of them not using the class recommended IDE (Visual Studio) and default compiler that it may be because their compiler is not C++11 compatible.
We have not used many C++11 features-in fact the only one we have used so far is auto. (I did some searching before and found that this was a C++11 new feature, is this correct?). Should I be worried about any compatibility issues with my given environment (MinGW 3.2 - CLION uses GCC 32 only last I checked) and CMake (ver 3.2.2)?
Also is CLION a good IDE in general? I have access to VS2013 for a year though I use a WebStorm and PyCharm for other classes and personal projects so I thought I'd stick in the JetBrains family and use CLION.

Chossing between visual c++ and gcc to compile c++ programs mainly for studying purposes

I am moving from g++ to visual studio mainly for c++ coding , i wanted to ask that whether microsoft's c++ compiler supports all the features of c++11 and c++14 as supported by g++ .
Here's a compatibility table for various compilers.
You should look under the MSVC column to see what support offers the Microsoft compiler.
At a quick glance it seems that they implement most of the same features (using gcc 5 and MSVC 14 as reference), although there are small differences.

Tizen support for C++ 11 standard

I am beginning Tizen application developer.
I would like to know what is current support for C++11 features on Tizen?
When will the C++11 standard be fully supported? Maybe some platform developers could shed a light on that topic.
The Tizen 2.3 SDK comes with clang++ version 3.4 and gcc 4.8.
gcc 4.8 is known to not adhere to the C++11 and C++14 standards, clang++ 3.4 is really close to complete for C++11.
However, there's more to C++11 compliance than just the compiler. You also need to have enough support in the C++ library. GCC and Clang have different C++ library projects.
As far as I can quickly tell, Tizen 2.3 ships version 2.13 - which is from 2011.
So don't get your hopes up: things like move semantics, std::mutex, std::async will work, but smaller details like thread local storage will not.

Compiler that supports c++11 for Windows vista

I'm currently studying a book regarding C++, which is quite new. Therefore it also discusses C++11 in some parts. Having Windows Vista, I can't download the latest version of Visual Express, so I'll have to do with the 2010 version. This doesn't support C++11, so I'm currently wondering whether there exists a free alternative which does support C++11.
p.s. - Would you say it's essential/important for a beginner in programming to learn C++11 as well (instead of just the core basics)?
You could consider using virtual machine with a Linux flavor. I had the same problem as you, I installed VirtualBox, then Ubuntu having the latest g++ compiler
You could compile and use Clang on Windows Vista and integrate it to Visual Studio. They have an almost complete support for C++11 now (as of version 3.3).

Resources