Download Latest Version GSL 4.2.0 Release source code.tar.gz (62.3 kB)
Email in envelope

Get an email when there's a new version of GSL

Home / v4.2.0
Name Modified Size InfoDownloads / Week
Parent folder
GSL 4.2.0 Release source code.tar.gz 2025-02-28 62.3 kB
GSL 4.2.0 Release source code.zip 2025-02-28 85.5 kB
README.md 2025-02-28 2.7 kB
Totals: 3 Items   150.5 kB 2

GSL 4.2.0 Release Notes

New Features

  • Added gsl::swap for safely swapping gsl::not_null pointers (#1160)
  • Introduced element_type member type to gsl::not_null for better type trait consistency (#1196)
  • Added support for strict_not_null with unique_ptr (#1179)
  • Added comprehensive test suite for gsl::span including empty span, conversion, and comparison tests (#1189)

Performance Improvements

  • Significantly improved span_iterator performance with Clang compiler, reducing overhead by up to 20x (#1166)

Bug Fixes

  • Fixed GCC-specific bug with list initialization of const references (#1175)
  • Fixed SFINAE implementation in gsl::owner (#1174)
  • Fixed issues with std::enable_if usage throughout the codebase (#1177)
  • Modified include directives to use explicit "gsl/" prefix to prevent header conflicts (#1184)
  • Changed include directives to use relative paths to comply with CppCoreGuideline SF.12 (#1194)

Deprecated Features

  • Removed deprecated string_span feature (#1185)
  • Marked the following features as deprecated as they are now in the C++ standard:
  • gsl::unique_ptr
  • gsl::shared_ptr
  • gsl::byte (since C++17)
  • gsl::joining_thread

Infrastructure Updates

  • Updated CI pipeline for Ubuntu 24.04
  • Updated compiler support:
  • Clang 16, 17, 18
  • GCC 12, 13, 14
  • Upgraded to GoogleTest v1.14.0
  • Added new issue templates
  • Updated documentation and badges

Thanks to Contributors

Special thanks to the following contributors who helped make GSL 4.2.0 possible:

Your contributions have helped improve GSL's reliability, performance, and usability.

Source: README.md, updated 2025-02-28