Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
a local clone.
Change Log: 2.086.1
Download D 2.086.1
released Jun 15, 2019
2.086.1 comes with 1 major change and 41 fixed Bugzilla issues.
A huge thanks goes to the
19 contributors
who made 2.086.1 possible.
Compiler changes
List of all bug fixes and enhancements in D 2.086.1.
Compiler changes
- Interface contracts retrieve arguments correctly
Fixed regression 15984.
As a side effect, contracts are not ABI compatible with previous releases.
interface I { void fun(int i) out { assert(i == 5); } // succeeds } class C : I { void fun(int i) do { } } unittest { auto c = new C; c.fun(5); }
List of all bug fixes and enhancements in D 2.086.1:
DMD Compiler regressions
- Bugzilla 19584: Illegal optimization: Shift-or -> imul
- Bugzilla 19631: Segfault on simple nested templated struct
- Bugzilla 19871: Copy constructor rejects valid code if default construction is disabled
- Bugzilla 19887: Segfault with void tuple default parameter
- Bugzilla 19901: importing export symbols causes link errors
- Bugzilla 19936: Deprecated alias get this falsely triggers on appending to array
DMD Compiler bugs
- Bugzilla 12950: Lexer interprets UFCS on hex integer as hex float literal
- Bugzilla 13819: ICE: backend\cg87.c with -O: "a % 2 != 0" for a double
- Bugzilla 17258: Pass by name doesn't work reliably and can sometimes lead to memory corruption
- Bugzilla 17793: [ICE] Internal error: ddmd/backend/cod1.c 3976 using simd.double4
- Bugzilla 18439: Error: cannot use operator ~= in @nogc delegate 'main.test.__lambda1'
- Bugzilla 18772: [ICE] Internal error: dmd\backend\cgcod.c 607 no optimizations
- Bugzilla 18784: Segfault due to dmd codegen interfacing with C++
- Bugzilla 19002: __FUNCTION__ and __PRETTY_FUNCTION__ cannot be used as C string literals
- Bugzilla 19386: Destructor not called when constructed inside if condition, leading to memory leak
- Bugzilla 19557: extern(C++, ns) and extern(C++, class) interact weird
- Bugzilla 19713: dmd crashes generating code for C++ template function
- Bugzilla 19825: Memory corruption involving lazy variadic, stdio and json
- Bugzilla 19831: throw/catch in scope(exit) crashes with illegal instruction
- Bugzilla 19857: Name mangling mismatch when compiling with -dip1000
- Bugzilla 19881: Escaping reference to local through return scope with -dip1000 and @safe
- Bugzilla 19888: default parameters in templates with tuple parameters+defaults are thrown away
- Bugzilla 19895: Floating point exception casting zero length array
- Bugzilla 19897: dinterpret.d:6439: Internal Compiler Error: null field
- Bugzilla 19898: ICE: in sizemask at dmd/mtype.d(2563): Assertion failure
- Bugzilla 19911: ICE: Segmentation fault with struct object and variadic function
- Bugzilla 19912: [module] No implicit import of object module when an object declaration exists.
- Bugzilla 19913: ICE: Segmentation fault with mixin and enum
- Bugzilla 19914: ICE: Segmentation fault with mixin and templated class
- Bugzilla 19915: ICE: Segmentation fault with alias and templated class
- Bugzilla 19922: ICE: Segmentation fault with typeid()
- Bugzilla 19923: ICE: typesem.d(3809): Assertion failure with .classinfo
- Bugzilla 19941: [ICE] Segmentation fault in ImplicitConvTo::visit(AddrExp*) at dmd/dcast.d(980)
- Bugzilla 19942: [ICE] Segmentation fault in resolvePropertiesX at dmd/expressionsem.d:1112
- Bugzilla 19954: ICE: Casting AliasSeq to array and passing to a function
- Bugzilla 19955: [ICE] Segmentation fault in StatementSemanticVisitor::visit(SwitchStatement*) at dmd/statementsem.d:2558
Phobos bugs
- Bugzilla 19837: std.random.isUniformRNG(Rng, ElementType) should not require Rng.front to be annotated @property
- Bugzilla 19850: double nested joiner .back falsely thinks the range is empty
Druntime regressions
- Bugzilla 19701: undefined reference to `_D6object__T6hashOf
Druntime bugs
- Bugzilla 17248: Multiple wrong function definitions in core.sys.windows.winldap (causing runtime issues)
- Bugzilla 19847: no GC memory above 4GB reported with --DRT-gcopt=profile:1
Contributors to this release (19)
A huge thanks goes to all the awesome people who made this release possible.
- Basile Burg
- Eugen Wissner
- Hiroki Noda
- Iain Buclaw
- Jan Jurzitza
- kinke
- Les De Ridder
- look-at-me
- Martin Nowak
- Mathis Beer
- Mike Franklin
- Nathan Sashihara
- Nicholas Wilson
- Rainer Schuetze
- Razvan Nitu
- Sebastian Wilzbach
- Spoov
- Walter Bright
- سليمان السهمي (Suleyman Sahmi)
Copyright © 1999-2022 by the D Language Foundation | Page generated by
Ddoc on (no date time)