v1.5.0
This will be the final (non bugfix) release of version 1.
Future version 2 releases will break backwards compatibility by making
the v2 containers default, but v1 containers will still be accessible with
minimal changes.
Documentation for v2 containers should be completed soon, but as
always, the comparable C++ STL documentation is generally quite close
modulo Fortran syntax.
Fixed
- Added support for compiling on Windows with Intel compiler.
- Corrected uninitialized value problem with v2 maps. Detected
by NAG with aggressive debug flags. - Corrected logic for default value for vectors of (polymorphic)
abstract objects. - Corrected logic for standard GFortran workarounds for fHamcrest tests.
Changed
- Simplified various expressions involving type operations. Intel 2021.1 was choking
on an external use case but seems happier if intemediate variables are introduced
within expressions involving user defined==
and<
. Some attempt was made to use
ASSOCIATE
instead, but NAG 7.0 had trouble with one of those. A reproducer for
the Intel problem has been created and will be submitted. - Set container now uses ALLOCATABLE for children rather than pointers. This makes
some internal algorithms a bit painful to implement, but avoids the need for explicit
FINAL methods which appear to expose buggy compilers. (Hard to isolate though.)
Deleted
- Deleted altSet support in v2 containers. This was always intendend
as a workaround for limitations in FINAL implementation by various
compilers. But v2 set now uses allocatable containers and sidesteps
this. (Also, altset was never completed in v2 containers anyway.)