Skip to content
The LLVM-based D compiler.
C C++ CMake Objective-C D Batchfile
Latest commit 74449a5 @kinke kinke Merge pull request #1214 from JohanEngelen/alignment
Fix explicit alignment of local variables
Failed to load latest commit information.
bash_completion.d Use bash completion dir from config if available
cmake/Modules Fix linking with LLVM shared libraries.
dmd2 Add alignment of local variables to the AST (also applied upstream).
driver Cleanup runtime fwd decls and use ABI functiontype rewriting
gen fix building with recent LLVM
ir Cleanup runtime fwd decls and use ABI functiontype rewriting
runtime Update druntime
tests Add alignment of local variables to the AST (also applied upstream).
utils Add IR test suite (using LLVM tools: lit and FileCheck)
vcbuild Windows: make sure the linker batch files return the linker's exit code
.clang-format driver/gen/ir: clang-format the world
.clang-tidy clang-tidy: Add readability-else-after-return
.gitattributes set proper attributes for Windows
.gitmodules Imported D2 testsuite (v2.060) as submodule.
.travis.yml travis: Require OS X debug tests to be green
CMakeCPack.cmake Add CPack configuration for debian packages
CMakeLists.txt fix building with recent LLVM
Doxyfile Inlined sources in Doxygen docs (for tablet use) and increased DOT ma…
LICENSE Merged all licenses into LICENSE for release packaging; updated LDC c… Add coverage testing.
appveyor.yml Fix Travis script Simplify and fix install target Dynamically load libcurl when needed (backport from post-2.068 upstream) Simplify and fix install target

LDC – the LLVM-based D Compiler

Build Status Test Coverage Bountysource

The LDC project aims to provide a portable D programming language compiler with modern optimization and code generation capabilities.

The compiler uses the official DMD frontends to support the latest version of D2, and relies on the LLVM Core libraries for code generation.

LDC is fully Open Source; the parts of the code not taken/adapted from other projects are BSD-licensed (see the LICENSE file for details).

Please consult the D wiki for further information:

D1 is no longer available; see the 'd1' Git branch for the last version supporting it.


In-depth material on building and installing LDC and the standard libraries, including experimental instructions for running LDC on Windows, is available on the project wiki, at

If you have a working C++ build environment, CMake, a current LLVM and libconfig++ ( available, there should be no big surprises, though.

Do not forget to make sure all the submodules are up to date:

$ cd ldc
$ git submodule update --init

Some Linux distributions are also packaging a recent version of LDC, so building it manually might not be necessary.


The best way to get in touch with the developers is either via the digitalmars.D.ldc forum/newsgroup/mailing list ( or the #ldc IRC channel on FreeNode.

For further documentation, contributor information, etc. please see the D wiki:

Feedback of any kind is very much appreciated!

Something went wrong with that request. Please try again.