From 17ab087c6172ffb68e9fbc89d03a01c23e69b880 Mon Sep 17 00:00:00 2001 From: Ahmad Nawab Date: Fri, 12 Apr 2024 09:59:53 +0200 Subject: [PATCH] PoolAllocator: switch to typebound var resolution convenience utility --- transformations/transformations/pool_allocator.py | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/transformations/transformations/pool_allocator.py b/transformations/transformations/pool_allocator.py index 294716a7e..c063bfccd 100644 --- a/transformations/transformations/pool_allocator.py +++ b/transformations/transformations/pool_allocator.py @@ -23,7 +23,7 @@ DetachScopesMapper, SymbolAttributes, BasicType, DerivedType, is_dimension_constant, recursive_expression_map_update, get_pragma_parameters, FindInlineCalls, Interface, - dataflow_analysis_attached + dataflow_analysis_attached, resolve_typebound_var ) __all__ = ['TemporariesPoolAllocatorTransformation'] @@ -435,11 +435,7 @@ def _get_stack_storage_and_size_var(self, routine, stack_size): ) variables_append += [stack_storage] - name_parts = self.block_dim.size.split('%', maxsplit=1) - block_size = routine.symbol_map[name_parts[0]] - if len(name_parts) > 1: - block_size = block_size.get_derived_type_member(name_parts[1]) - + block_size = resolve_typebound_var(self.block_dim.size, routine.symbol_map) stack_alloc = Allocation(variables=(stack_storage.clone(dimensions=( # pylint: disable=no-member stack_size_var, block_size)),)) stack_dealloc = Deallocation(variables=(stack_storage.clone(dimensions=None),)) # pylint: disable=no-member