Re:Zero-days in Cisco Discovery Protocol
by DagAgren on Friday February 07, 2020 @06:14AM
(#22264924)
VS now ships clang, so that should improve support for C considerably.
Objective-C is C, with extensions. Swift interoperates with C, not C++.
It ships clang, because that is Microsoft's answer to C support on Windows, for those that still want to use C.
Visual C++ focus is naturally C++.
C with extensions, by definition, is not C, rather something else.
Swift interoperates with Objective-C, thus C interoperability comes for free.
IO Kit, DriverKit, Metal Shaders, LLVM make all use of C++.
Even the new Universal C runtime is written in C++ using extern "C".
On Android, C is reserved for the Linux kernel and "legacy drivers" (pre-Treble), everything else is C++ and Java/Kotlin.
On Apple OSes, C is left for the UNIX style compatibility layer, everything else is a mix of Objective-C, Swift and C++.
By the way it is either C or C++, not C/C++.