Skip to content
Q864915
EntityQ864915· pop 24· linked from 297 articles

Clang () is a compiler front end for the programming languages C, C++, Objective-C, Objective-C++, and the software frameworks OpenMP, OpenCL, RenderScript, CUDA, SYCL, and HIP. It acts as a drop-in replacement for the GNU Compiler Collection (GCC), supporting most of its compiling flags and unofficial language extensions. It includes a static analyzer, and several code analysis tools.

Key facts

Software.screenshot
Clang 21.1.7 version and compile information screenshot.webp
Software.caption
Screenshot of Clang 21.1.7 version information and verbose compile information, along with the compiled program
Software.author
Chris Lattner
Software.developer
LLVM Developer Group
Software.programming language
C++
Software.operating system
Unix-like
Software.platform
AArch64, ARMv7, IA-32, x86-64, ppc64le
Software.genre
Compiler front end
Software.license
Apache 2.0 with LLVM Exceptions

via Wikipedia infobox

Source code

Link to the source-code README · 2,242 chars · not written by Vinony

~12 min read

Encyclopedic overview

9 sections
Contents
  • Background
  • Design
  • Flang - Fortran
  • Performance and GCC compatibility
  • Interface
  • Status history
  • See also
  • References
  • External links

Clang () is a compiler front end for the programming languages C, C++, Objective-C, Objective-C++, and the software frameworks OpenMP, OpenCL, RenderScript, CUDA, SYCL, and HIP. It acts as a drop-in replacement for the GNU Compiler Collection (GCC), supporting most of its compiling flags and unofficial language extensions. It includes a static analyzer, and several code analysis tools.

Clang operates in tandem with the LLVM compiler back end and has been a subproject of LLVM 2.6 and later. As with LLVM, it is free and open-source software under the Apache 2.0 software license. Its contributors include Apple, IBM, Microsoft, Google, ARM, Sony, Intel and AMD.

Excerpted from Wikipedia’s “Q864915” article, available under the CC BY-SA 4.0 licence.