www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - LDC 1.21.0-beta1

reply kinke <noone nowhere.com> writes:
Glad to announce the first beta for an exciting LDC 1.21 release:

* Based on D 2.091.0; LLVM upgraded to v10.0.0-rc4.
* Experimental iOS/arm64 support.
* Initial support for GCC/GDC-style inline assembly syntax, 
primarily for portability across GDC and LDC (and GCC-style C).
* Android improvements, incl. an important fix for x86 
architectures, usability of the ld.gold linker and no more D 
`main()` requirement.
* Important AArch64 bugfix, especially for unoptimized code.

Full release log and downloads: 
https://github.com/ldc-developers/ldc/releases/tag/v1.21.0-beta1

Please help test, and thanks to all contributors!
Mar 21
next sibling parent reply Peter Jacobs <peterj mech.uq.edu.au> writes:
On Saturday, 21 March 2020 at 12:05:18 UTC, kinke wrote:
 Glad to announce the first beta for an exciting LDC 1.21 
 release:


 Please help test, and thanks to all contributors!
I am seeing a linker error with this beta. Same compilation works with 1.20.1. ldc2 -w -g -d-debug -d-version=flavour_debug -d-version=with_libplot -dip1008 -I.. -I../nm -I../util -I../geom -I../grid_utils -I../extern/gzip -d-version=multi_species_gas -d-version=multi_T_gas -d-version=MHD -d-version=turbulence -of=e4shared \ -d-version=tecplot_unavailable \ main_with_rev_string.d \ ----- long lines snipped ------ ../gasdyn/gasflowexception.d ../gasdyn/idealgasflow.d ../gasdyn/gasflow.d ../gasdyn/luaidealgasflow.d ../gasdyn/luagasflow.d ../nm/luabbla.d \ -L-L../../extern/lua-5.1.4/lib -L-lplot -L-llua -L-ldl e4shared.o:luabbla.d:_D7simcore12__ModuleInfoZ: error: undefined reference to '_D6kdtree12__ModuleInfoZ' collect2: error: ld returned 1 exit status Error: /usr/bin/cc failed with status: 1
Mar 22
next sibling parent Johan <j j.nl> writes:
On Sunday, 22 March 2020 at 12:00:58 UTC, Peter Jacobs wrote:
 I am seeing a linker error with this beta.  Same compilation 
 works with 1.20.1.

 ldc2 -w -g -d-debug -d-version=flavour_debug 
 -d-version=with_libplot -dip1008 -I.. -I../nm -I../util 
 -I../geom -I../grid_utils -I../extern/gzip 
 -d-version=multi_species_gas -d-version=multi_T_gas 
 -d-version=MHD -d-version=turbulence -of=e4shared \
 	-d-version=tecplot_unavailable \
 	main_with_rev_string.d \
 ----- long lines snipped ------
 	../gasdyn/gasflowexception.d ../gasdyn/idealgasflow.d 
 ../gasdyn/gasflow.d ../gasdyn/luaidealgasflow.d 
 ../gasdyn/luagasflow.d ../nm/luabbla.d  \
 	-L-L../../extern/lua-5.1.4/lib -L-lplot -L-llua -L-ldl
 e4shared.o:luabbla.d:_D7simcore12__ModuleInfoZ: error: 
 undefined reference to '_D6kdtree12__ModuleInfoZ'
 collect2: error: ld returned 1 exit status
 Error: /usr/bin/cc failed with status: 1
Are you sure you are linking with that `kdtree` module? Upgrading the compiler often uncovers latent linking dependency bugs (possibly 1.20 optimizes / codegens things slightly different). -Johan
Mar 22
prev sibling parent reply kinke <noone nowhere.com> writes:
On Sunday, 22 March 2020 at 12:00:58 UTC, Peter Jacobs wrote:
 I am seeing a linker error with this beta.  Same compilation 
 works with 1.20.1.
Well, thx for giving it a try, but that's hardly useful (just looks like a `kdtree` module not being compiled) - firstly, try to check whether that's LDC-specific (i.e., doesn't happen with the corresponding DMD version 2.091.0), and if so, please file a GitHub issue with reproduction steps.
Mar 22
parent Peter Jacobs <peterj mech.uq.edu.au> writes:
On Sunday, 22 March 2020 at 12:27:51 UTC, kinke wrote:
 On Sunday, 22 March 2020 at 12:00:58 UTC, Peter Jacobs wrote:
 I am seeing a linker error with this beta.  Same compilation 
 works with 1.20.1.
Well, thx for giving it a try, but that's hardly useful (just looks like a `kdtree` module not being compiled) - firstly, try to check whether that's LDC-specific (i.e., doesn't happen with the corresponding DMD version 2.091.0), and if so, please file a GitHub issue with reproduction steps.
It was a dependency bug in my build process uncovered by the new LDC, as Johan suggested. In my superficial scan of the source code, I did not find any kdtree module and so was thinking (incorrectly) that it might be a compiler-supplied module. Turns out that it was a module recently added by a colleague. LDC 1.21.0-beta1 was correct to identify it as missing from the build. Interestingly, DMD 2.091.0 built the code without complaint. Apologies for the bother but thank you for all of the work on LDC (and for the gentle replies to my report).
Mar 22
prev sibling next sibling parent Pezbi Mahn <pezbiworkemail gmail.com> writes:
Sounds dope

On Sat, Mar 21, 2020 at 8:10 AM kinke via Digitalmars-d-announce <
digitalmars-d-announce puremagic.com> wrote:

 Glad to announce the first beta for an exciting LDC 1.21 release:

 * Based on D 2.091.0; LLVM upgraded to v10.0.0-rc4.
 * Experimental iOS/arm64 support.
 * Initial support for GCC/GDC-style inline assembly syntax,
 primarily for portability across GDC and LDC (and GCC-style C).
 * Android improvements, incl. an important fix for x86
 architectures, usability of the ld.gold linker and no more D
 `main()` requirement.
 * Important AArch64 bugfix, especially for unoptimized code.

 Full release log and downloads:
 https://github.com/ldc-developers/ldc/releases/tag/v1.21.0-beta1

 Please help test, and thanks to all contributors!
Mar 22
prev sibling parent zoujiaqing <zoujiaqing gmail.com> writes:
On Saturday, 21 March 2020 at 12:05:18 UTC, kinke wrote:
 Glad to announce the first beta for an exciting LDC 1.21 
 release:

 * Based on D 2.091.0; LLVM upgraded to v10.0.0-rc4.
 * Experimental iOS/arm64 support.
 * Initial support for GCC/GDC-style inline assembly syntax, 
 primarily for portability across GDC and LDC (and GCC-style C).
 * Android improvements, incl. an important fix for x86 
 architectures, usability of the ld.gold linker and no more D 
 `main()` requirement.
 * Important AArch64 bugfix, especially for unoptimized code.

 Full release log and downloads: 
 https://github.com/ldc-developers/ldc/releases/tag/v1.21.0-beta1

 Please help test, and thanks to all contributors!
Thanks!! and LLVM 10.0.0 released :)
Apr 06