Menu

- Learn
- Documentation
  - Language Reference
  - Library Reference
  - Command-line Reference
  - Feature Overview
  - Articles
- Downloads
- Packages
- Community
  - Blog
  - Orgs using D
  - Twitter
  - Forums
  - IRC
  - Community Discord
  - Wiki
  - GitHub
  - Issues
  - Get involved
  - Contributors
  - Foundation
  - Security Team
  - Donate
  - Sponsors
- Resources
  - Tour
  - Books
  - Tutorials
  - Tools
  - Editors
  - IDEs
  - run.dlang.io
  - Visual D
  - Acknowledgments
  - D Style
  - Glossary
  - Sitemap

Search
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.096.1

Download D 2.096.1
released Apr 23, 2021

2.096.1 comes with 21 fixed Bugzilla issues. A huge thanks goes to the 18 contributors who made 2.096.1 possible.
List of all bug fixes and enhancements in D 2.096.1.

List of all bug fixes and enhancements in D 2.096.1:

#### DMD Compiler regression fixes

1. Bugzilla 21229: [REG 2.080.2] Constructor flow analysis doesn't understand unions
2. Bugzilla 21687: Confusing error message for CTFE pointer in static initializer
3. Bugzilla 21798: checkaction=context creates temporary of type void
4. Bugzilla 21806: Overload selection ignores slice

#### DMD Compiler bug fixes

1. Bugzilla 19192: [wrong-code] [crashes] Covariant method interface <- abstract class <- class hierarchies
2. Bugzilla 20705: -preview=rvaluerefparam does not work with template deduction
3. Bugzilla 21799: CTFE doesn't call base class destructor for extern(D) classes

#### DMD Compiler enhancements

1. Bugzilla 21845: Wrong ParameterStorageClass when -preview=in is used

#### Phobos regression fixes

1. Bugzilla 20886: std.process.browse does not work with URLs 256 characters or longer
2. Bugzilla 21716: std.regex performance regression (additional GC allocation)
3. Bugzilla 21725: Specifying null as bitfields variable name now fails

#### Phobos bug fixes

1. Bugzilla 21702: avoid quadratic template expansion in constraints of multiple search term versions of std.algorithm.searching.startsWith & endsWith
2. Bugzilla 21721: casting std.BigInts to built-in floating point types doesn't work without -preview=dip1000
3. Bugzilla 21724: std.algorithm.mutation.copy fails on overlapping arrays if the source array's pointer is less than the destination array's pointer
4. Bugzilla 21758: std.experimental.checkedint opBinaryRight with integer left-hand side does not compile for any operators except + and -
5. Bugzilla 21801: std.typecons.ReplaceType does not work for in parameters

#### Druntime regression fixes

1. Bugzilla 21709: std.conv.emplace not usable in betterC - 2.096
2. Bugzilla 21712: [REG 2.096.0] sometimes coverage *.lst files are corrupted

#### Druntime bug fixes

1. Bugzilla 21371: core.stdcpp.allocator: _Adjust_manually_vector_aligned checks for sentinel unconditionally (Windows only)
2. Bugzilla 21701: casWeak is not implemented

#### Druntime enhancements

1. Bugzilla 21784: joining a detached thread results in segfault.

### Contributors to this release (18)

A huge thanks goes to all the awesome people who made this release possible.

- Basile Burg
- Boris Carvajal
- Florian
- Iain Buclaw
- Imperatorn
- Johan Engelen
- Jon Degenhardt
- Martin Kinkelin
- Martin Nowak
- Mathias Lang
- MoonlightSentinel
- Nathan Sashihara
- Nicholas Wilson
- Puneet Goel
- Razvan Nitu
- Roy Margalit
- Vladimir Panteleev
- Ömer Faruk Irmak

Copyright © 1999-2023 by the D Language Foundation | Page generated by Ddoc on Sat Jul 15 12:03:55 2023