20232, "mppf", "Should Chapel require a newer GCC version to build the compiler?", "2022-07-18T13:59:15Z"
The Chapel compiler currently uses C++14 but only GCC 5 is required in prereqs.rst.
This creates a recurring problem with dyno when using enum types (see PRs #20231#18161#18133#19586#18723#18722). The problem is that std::hash is not defined for enum types in GCC 5.4. This issue was fixed in C++14 but the GCC documentation indicates that only GCC 6.1 or newer has non-experimental C++14 support. We see this problem arise in nightly testing in testing GCC 5.4 or for testing a recent clang when using the GCC 5.4 version of the c++ standard library.
Note that the LLVM project also requires C++14. However LLVM requires a newer compiler requires one of these compiler versions:
Clang 5.0
Apple Clang 9.3
GCC 7.1
Visual Studio 2019 16.7
So, should the prereqs.rst list a version newer than GCC 5 as the minimum required? If so, should it list GCC 6.1 or GCC 7.1?