Goddard-Fortran-Ecosystem / gFTL

Software containers for Fortran
Apache License 2.0
41 stars 10 forks source link

Lots of duplicated warnings about `"__algorithm_iterator" redefined` #150

Closed ZedThree closed 2 years ago

ZedThree commented 2 years ago

There are lots of these warnings, so much that it's unfortunately significantly slowing down single-threaded compilation. Here's an extract:

[200/1384] Building Fortran preprocessed _deps/pfunit-build/extern/fArgParse/extern/gFTL-shared/src/v2/CMakeFiles/gftl-shared-v2.dir/map/IntegerReal128Map.F90-pp.f90
/home/peter/Codes/neasy-f/build/_deps/pfunit-src/extern/fArgParse/extern/gFTL-shared/extern/gFTL/include/v2/set/procedures.inc:1033:0:

 1033 | #define __algorithm_iterator __set_iterator
      | 
Warning: "__algorithm_iterator" redefined
/home/peter/Codes/neasy-f/build/_deps/pfunit-src/extern/fArgParse/extern/gFTL-shared/extern/gFTL/include/v2/map/specification.inc:144:0:

  144 | #define __algorithm_iterator __map_iterator
      | 
note: this is the location of the previous definition
[222/1384] Building Fortran preprocessed _deps/pfunit-build/extern/fArgParse/extern/gFTL-shared/src/v2/CMakeFiles/gftl-shared-v2.dir/ordered_map/IntegerDoubleOrderedMap.F90-pp.f90
/home/peter/Codes/neasy-f/build/_deps/pfunit-src/extern/fArgParse/extern/gFTL-shared/extern/gFTL/include/v2/vector/specification.inc:212:0:

  212 | #define __algorithm_iterator __vector_iterator
      | 
Warning: "__algorithm_iterator" redefined
/home/peter/Codes/neasy-f/build/_deps/pfunit-src/extern/fArgParse/extern/gFTL-shared/extern/gFTL/include/v2/map/specification.inc:144:0:

  144 | #define __algorithm_iterator __map_iterator
      | 
note: this is the location of the previous definition
/home/peter/Codes/neasy-f/build/_deps/pfunit-src/extern/fArgParse/extern/gFTL-shared/extern/gFTL/include/v2/vector/procedures.inc:1013:0:

 1013 | #define __algorithm_iterator __vector_iterator
      | 
Warning: "__algorithm_iterator" redefined
/home/peter/Codes/neasy-f/build/_deps/pfunit-src/extern/fArgParse/extern/gFTL-shared/extern/gFTL/include/v2/map/procedures.inc:428:0:

  428 | #define __algorithm_iterator __map_iterator
      | 
note: this is the location of the previous definition

It looks like there's only three unique sources of the warnings:

I think the above snippet demonstrates all of them.

This is GFTL commit dc85913, ultimately from pfunit 47b3b0ab1.