# loki.tests.test_derived_types

Functions

`fixture_builder`(tmp_path) |
`fixture_shadowed_typedef_symbols_fcode`(...) |
`test_array_indexing_deferred`(tmp_path, frontend) | Test simple vector/matrix arithmetic with a derived type with dynamically allocated arrays.
`test_array_indexing_explicit`(tmp_path, frontend) | Test simple vector/matrix arithmetic with a derived type
`test_array_indexing_nested`(tmp_path, frontend) | Test simple vector/matrix arithmetic with a nested derived type
`test_case_sensitivity`(tmp_path, frontend) | Some abuse of the case agnostic behaviour of Fortran
`test_deferred_array`(tmp_path, frontend) | Test simple vector/matrix with an array of derived types
`test_derived_type_bind_attrs`(frontend, tmp_path) | Test attribute representation in type-bound procedures
`test_derived_type_bind_c`(frontend, tmp_path) |
`test_derived_type_bind_deferred`(frontend, ...) |
`test_derived_type_caller`(tmp_path, frontend) | Test a simple call to another routine specifying a derived type as argument
`test_derived_type_clone`(frontend, tmp_path) | Test cloning of derived types
`test_derived_type_final_generic`(frontend, ...) | Test derived types with generic and final bindings
`test_derived_type_inheritance`(frontend, tmp_path) |
`test_derived_type_inheritance_missing_parent`(...) |
`test_derived_type_linked_list`(frontend, tmp_path) | Test correct initialization of derived type members that create a circular dependency
`test_derived_type_nested_procedure_call`(...) | Test correct representation of inline calls and call statements for type-bound procedures in nested derived types.
`test_derived_type_private`(frontend, tmp_path) |
`test_derived_type_private_comp`(frontend, ...) |
`test_derived_type_procedure_designator`(...) |
`test_derived_type_public`(frontend, tmp_path) |
`test_derived_type_rescope_symbols_shadowed`(...) | Test the rescoping of symbols with shadowed symbols in a typedef.
`test_derived_type_sequence`(frontend, tmp_path) | Verify derived types with `SEQUENCE` stmt work as expected
`test_derived_type_symbol_inheritance`(...) |
`test_derived_type_type_bound_call_proctype`(...) | Test correct procedure type information on type-bound procedures
`test_derived_types_abstract_deferred_procedure`(...) |
`test_derived_types_character_array_subscript`(...) |
`test_derived_types_nested_subscript`(...) |
`test_derived_types_nested_type`(frontend, ...) |
`test_simple_loops`(tmp_path, frontend) | Test simple vector/matrix arithmetic with a derived type

fixture_builder(tmp_path)

test_simple_loops(tmp_path, frontend)

  Test simple vector/matrix arithmetic with a derived type

test_array_indexing_explicit(tmp_path, frontend)

  Test simple vector/matrix arithmetic with a derived type

test_array_indexing_deferred(tmp_path, frontend)

  Test simple vector/matrix arithmetic with a derived type with dynamically allocated arrays.

test_array_indexing_nested(tmp_path, frontend)

  Test simple vector/matrix arithmetic with a nested derived type

test_deferred_array(tmp_path, frontend)

  Test simple vector/matrix with an array of derived types

test_derived_type_caller(tmp_path, frontend)

  Test a simple call to another routine specifying a derived type as argument

test_case_sensitivity(tmp_path, frontend)

  Some abuse of the case agnostic behaviour of Fortran

test_derived_type_bind_c(frontend, tmp_path)

test_derived_type_inheritance(frontend, tmp_path)

test_derived_type_private(frontend, tmp_path)

test_derived_type_public(frontend, tmp_path)

test_derived_type_private_comp(frontend, tmp_path)

test_derived_type_procedure_designator(frontend, tmp_path)

test_derived_type_bind_attrs(frontend, tmp_path)

  Test attribute representation in type-bound procedures

test_derived_type_bind_deferred(frontend, tmp_path)

test_derived_type_final_generic(frontend, tmp_path)

  Test derived types with generic and final bindings

test_derived_type_clone(frontend, tmp_path)

  Test cloning of derived types

test_derived_type_linked_list(frontend, tmp_path)

  Test correct initialization of derived type members that create a circular dependency

test_derived_type_nested_procedure_call(frontend, tmp_path)

  Test correct representation of inline calls and call statements for type-bound procedures in nested derived types.

test_derived_type_sequence(frontend, tmp_path)

  Verify derived types with `SEQUENCE` stmt work as expected

fixture_shadowed_typedef_symbols_fcode(tmp_path, builder)

test_derived_type_rescope_symbols_shadowed(tmp_path, shadowed_typedef_symbols_fcode, frontend)

  Test the rescoping of symbols with shadowed symbols in a typedef.

test_derived_types_character_array_subscript(frontend, tmp_path)

test_derived_types_nested_subscript(frontend, tmp_path)

test_derived_types_nested_type(frontend, tmp_path)

test_derived_types_abstract_deferred_procedure(frontend, tmp_path)

test_derived_type_symbol_inheritance(frontend, tmp_path)

test_derived_type_inheritance_missing_parent(frontend, qualified_import, tmp_path)

test_derived_type_type_bound_call_proctype(frontend)

  Test correct procedure type information on type-bound procedures