Skip to content


Subversion checkout URL

You can clone with
Download ZIP
The LLVM-based D compiler.
C C++ CMake
Failed to load latest commit information.
bash_completion.d Use bash completion dir from config if available
cmake/Modules Autodetect LLVM 3.8.
dmd2 Let LDC compile on DragonFlyBSD.
driver Implement -conf command-line switch for LDC2 and LDMD2
gen Fix AssertExp in boolean context also for release builds
ir Merge pull request #1142 from kinke/cppinit
runtime MSVC: detect VS install dir properly and add batch file helper for x86
tests/d2 dmd-testsuite: cherry-pick upstream fix for 64-bit reals
utils Make GCC intrinsics usable with @nogc and const *
vcbuild MSVC: detect VS install dir properly and add batch file helper for x86
.gitattributes set proper attributes for Windows
.gitmodules Imported D2 testsuite (v2.060) as submodule.
.travis.yml Merge pull request #1122 from klickverbot/coveralls
CMakeCPack.cmake Add CPack configuration for debian packages
CMakeLists.txt Remove clang options if compiler is gcc.
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 [MSVC] .conf: add a lib required by VS 2015+ when building LDC with V… Revise CMake scripts some more for MSVC Dynamically load libcurl when needed (backport from post-2.068 upstream) Dynamically load libcurl when needed (backport from post-2.068 upstream)

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.