diff --git a/CHANGELOG.md b/CHANGELOG.md index 0893c7ea7e40..55c07652b8bb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,6 +17,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed +- [#2433] Implemented workarounds for gfortran-13 + ### Removed ### Deprecated diff --git a/base/MAPL_LatLonToLatLonRegridder.F90 b/base/MAPL_LatLonToLatLonRegridder.F90 index af0a77dffa3f..56e89c29b028 100644 --- a/base/MAPL_LatLonToLatLonRegridder.F90 +++ b/base/MAPL_LatLonToLatLonRegridder.F90 @@ -169,7 +169,7 @@ subroutine compute_binning_weights(Weight,Xin,Xout,HasPoles,rc) dx = Xout(j_out+1)-Xin(j1) ff = ff + dx b(j1) = dx - b = b/ff + b(:) = b(:)/ff end if end associate diff --git a/profiler/tests/test_MeterNodeIterator.pf b/profiler/tests/test_MeterNodeIterator.pf index 4e15735d2a3b..77d8253353b9 100644 --- a/profiler/tests/test_MeterNodeIterator.pf +++ b/profiler/tests/test_MeterNodeIterator.pf @@ -12,11 +12,11 @@ contains class (AbstractMeterNodeIterator), allocatable :: iter_1 class (AbstractMeterNodeIterator), allocatable :: iter_2 - node = MeterNode('all', AdvancedMeter(MpiTimerGauge())) - iter_1 = node%begin() - iter_2 = node%begin() + allocate(iter_1, source=node%begin()) + allocate(iter_2, source=node%begin()) + @assertTrue(iter_1 == iter_2) @assertFalse(iter_1 /= iter_2) @assertTrue(iter_1 /= node%end()) @@ -46,8 +46,8 @@ contains class (AbstractMeterNodeIterator), allocatable :: iter_2 node = MeterNode('all', AdvancedMeter(MpiTimerGauge())) - iter_1 = node%begin() - iter_2 = node%begin() + allocate(iter_1, source=node%begin()) + allocate(iter_2, source=node%begin()) call node%add_child('a', AdvancedMeter(MpiTimerGauge())) @@ -73,7 +73,7 @@ contains node = MeterNode('all', AdvancedMeter(MpiTimerGauge())) count = 0 - iter = node%begin() + allocate(iter, source=node%begin()) do while (iter /= node%end()) count = count + 1 call iter%next() @@ -98,7 +98,7 @@ contains call node%add_child('c', AdvancedMeter(MpiTimerGauge())) count = 0 - iter = node%begin() + allocate(iter, source=node%begin()) do while (iter /= node%end()) count = count + 1 call iter%next() @@ -162,7 +162,7 @@ contains count = 0 - iter = node%begin() + allocate(iter, source=node%begin()) do while (iter /= node%end()) count = count + 1 t => iter%get_meter()