Thread overview
LDC 0.15.2 beta1 is out!
Mar 20, 2015
Kai Nacke
Mar 21, 2015
Dan Olson
Mar 21, 2015
Marc Schütz
Mar 24, 2015
bearophile
Mar 30, 2015
Kai Nacke
March 20, 2015
Hi everyone!

On behalf of the LDC team I am proud to announce the LDC 0.15.2 beta1 release!
It is based on the 2.066.1 front-end and LLVM 3.1-3.6 (OS X: no support for 3.3).

This minor release fixes some issues. Most important are the ABI changes which fixes a lot of bugs in the Win64 compiler.

Be sure to read the preliminary change log at the GitHub release page which also has the package download links:
https://github.com/ldc-developers/ldc/releases/tag/v0.15.2-beta1

MD5 checksums for the release packages:

b4009a73659c2d7732bd7ed1c7689733 ldc-0.15.2-beta1-src.tar.gz
e3aff691e8ef5c6fe5ee993a1ec47d4a ldc2-0.15.2-beta1-linux-x86.tar.gz
6e6d6752ba96f83ad9a45c020c822884 ldc2-0.15.2-beta1-linux-x86.tar.xz
cb5c22e83fb656f85a1a7dfe649bccc7 ldc2-0.15.2-beta1-linux-x86_64.tar.gz
bfa42133d1df9cd4aa08e9cced610144 ldc2-0.15.2-beta1-linux-x86_64.tar.xz
e99e924f394833186d0077159aa90eae ldc2-0.15.2-beta1-mingw-x86.7z
a8150b67eba605ac586d5e399e36c5c2 ldc2-0.15.2-beta1-mingw-x86.zip
186c54674b5fd3814ab7154915c27b8f ldc2-0.15.2-beta1-osx-x86_64.tar.gz
10d8dabbd7fd7181b3b7cf9f5e536994 ldc2-0.15.2-beta1-osx-x86_64.tar.xz
04d2abf77c347c69ba05ff8885bedff0 ldc2-0.15.2-beta1-win64-msvc.zip

Regarding the binaries:
The Linux binaries are built on Ubuntu 12.04 LTS with gcc 4.8.x and LLVM 3.6. They work on Ubuntu 12.04 LTS (or later) without installing additional software.

As always, the Win32/MinGW packages require a recent version of the mingw-w64 toolchain, see http://wiki.dlang.org/Building_LDC_on_MinGW_x86 for details. The package is build with i686-4.9.1-release-posix-dwarf-rt_v3-rev1 downloaded with the mingw installer.

The Win64 MSVC version is still considered alpha quality. It is built with VS2013 using LLVM 3.6 in release mode.
You find the build script here: https://github.com/ldc-developers/ldc-scripts/blob/master/ldc2-win64/RELEASE.proj

Please be sure to report any bugs at
https://github.com/ldc-developers/ldc/issues, and feel free to drop by
at the digitalmars.D.ldc forums
(http://forum.dlang.org/group/digitalmars.D.ldc) for any questions or
comments.

Thanks to everybody involved in making this happen!

Regards,
Kai
March 21, 2015
"Kai Nacke" <kai@redstar.de> writes:
> Hi everyone!
>
> On behalf of the LDC team I am proud to announce the LDC 0.15.2 beta1
> release!
> It is based on the 2.066.1 front-end and LLVM 3.1-3.6 (OS X: no
> support for 3.3).
>
> This minor release fixes some issues. Most important are the ABI changes which fixes a lot of bugs in the Win64 compiler.

I've got release-0.15.2 and LLVM 3.6 working with iOS and no regressions.

The ABI change presented me with an interesting puzzle though.  It switched extern (D) varargs to C style varags pushed on the stack instead of a separate arg array.

I had been using fastcc function calls [1] for extern (D) on IOS due to an LLVM optimizer bug with C calling convention (ccc) and, for a lesser reason, because the fastcc assembly code can at times be beautiful compared to ccc on iOS.  But fastcc doesn't support C style varags.

The path of least resistance seemed to be adopting ccc function calls. The LLVM optimizer bug with ccc still caused a unittest failure with LLVM 3.5.1.  Updating to LLVM 3.6 though apparently fixed it.

[1] http://llvm.org/docs/LangRef.html#calling-conventions
March 21, 2015
Packages for openSUSE are available here:

http://download.opensuse.org/repositories/home:/marc_schuetz:/branches:/devel:/languages:/D/
March 24, 2015
Kai Nacke:

> On behalf of the LDC team I am proud to announce the LDC 0.15.2 beta1 release!
> ...
> e99e924f394833186d0077159aa90eae ldc2-0.15.2-beta1-mingw-x86.7z
> ...
> The package is build with i686-4.9.1-release-posix-dwarf-rt_v3-rev1 downloaded with the mingw installer.

I am using that mingw release. If I swap ldc2 v.0.15.1 with v.0.15.2-beta1, I receive the errors:

...>ldmd2 test.d
Error: ...:\MinGW\lib\gcc failed with status: -1
Error: message: Couldn't execute program 'C:\MinGW\lib\gcc'Access denied.

Do you have suggestions?

Bye,
bearophile
March 30, 2015
On Tuesday, 24 March 2015 at 21:26:42 UTC, bearophile wrote:
> Kai Nacke:
>
>> On behalf of the LDC team I am proud to announce the LDC 0.15.2 beta1 release!
>> ...
>> e99e924f394833186d0077159aa90eae ldc2-0.15.2-beta1-mingw-x86.7z
>> ...
>> The package is build with i686-4.9.1-release-posix-dwarf-rt_v3-rev1 downloaded with the mingw installer.
>
> I am using that mingw release. If I swap ldc2 v.0.15.1 with v.0.15.2-beta1, I receive the errors:
>
> ...>ldmd2 test.d
> Error: ...:\MinGW\lib\gcc failed with status: -1
> Error: message: Couldn't execute program 'C:\MinGW\lib\gcc'Access denied.
>
> Do you have suggestions?
>
> Bye,
> bearophile

Hi bearophile!

I don't see a reason why the gcc file in the lib folder should be called. In my installation, this is a file with 0 byte size. The gcc exe lives in the bin folder.
Is your PATH variable reasonable set? Did you set the CC variable?

Regards,
Kai