The basic.settings file has had a limitation for a long while where any version-specific settings are tied to an exact version. That is, settings for gcc 9.0 can't also apply to 10.0 (or even 9.1). This makes things difficult when a potential range of different compilers need to be dealt with in the same fashion, especially in a forward-compatible way. (e.g. the lack of -ffor-scope on any GCC newer than 9.0, including ones not yet released)
An adjustment to one of the build files allows us to use a pattern matching specification to add parameter blocks for ranges of compilers (e.g. cxx_ver:>9.0 for any compiler version greater than 9.0, or cxx_ver:>=5.2,<7.0 for compiler versions between 5.2 (inclusive) and 7.0 (exclusive).)
The basic.settings file has had a limitation for a long while where any version-specific settings are tied to an exact version. That is, settings for gcc 9.0 can't also apply to 10.0 (or even 9.1). This makes things difficult when a potential range of different compilers need to be dealt with in the same fashion, especially in a forward-compatible way. (e.g. the lack of
-ffor-scope
on any GCC newer than 9.0, including ones not yet released)An adjustment to one of the build files allows us to use a pattern matching specification to add parameter blocks for ranges of compilers (e.g.
cxx_ver:>9.0
for any compiler version greater than 9.0, orcxx_ver:>=5.2,<7.0
for compiler versions between 5.2 (inclusive) and 7.0 (exclusive).)Should address issue #29 and #28