Skip to content

New variant of Set container (compiler workaround)

Compare
Choose a tag to compare
@tclune tclune released this 31 Jan 19:39
· 8 commits to main since this release
107f470

Added

  • Introduced new container "alt_set". Interfaces are the same as "set" but underlying implementation uses vectors of indices rather than pointers. The hope is that this will result in fewer compiler bugs related to deep copies of structures with self-referential pointers.
  • Optional FPP setting USE_ALT_SET to enable map containter to use alt_set instead of set under-the-hood.

Fixed

  • missing TARGET in some container interfaces. Spotted during introducition of "alt_set" container.

Added

  • Preliminary LLVMFlang support
  • Added missing TARGET attribute in map::erase() procedures. When
    used with NAG compiler, would result in temporary objects with
    dangling pointers. Added new test to cover this case.

Changed

  • Update CI to have gfortran-10 and gfortran-11 only on ubuntu-22.04
  • Update CI NVIDIA to NVHPC 24.7
  • Workarounds of IFX issues. (Did not submit reproducers.)
  • Add flang test to CI