Skip to content


Subversion checkout URL

You can clone with
Download ZIP
The LLVM-based D compiler.
C C++ CMake Objective-C D Batchfile
Latest commit 1bdc95a @kinke kinke Merge pull request #1208 from JohanEngelen/rtcleanup
Clean up druntime fwd decls
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 Simplify working with LLVM attributes
driver Cleanup runtime fwd decls and use ABI functiontype rewriting
gen Cleanup runtime fwd decls and use ABI functiontype rewriting
ir Cleanup runtime fwd decls and use ABI functiontype rewriting
runtime Disable Fiber migration unittest
tests Disable test not supported by LLVM on OS X
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 Add IR test suite (using LLVM tools: lit and FileCheck)
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.