With RFC-759 more boost libraries can be replaced with their C+17 counterparts. When C+17 compilation is adopted, replace std::variant and fix clang compilation errors.
Update C++ code in stack to work with C++17
Use the C++17 Standard
Remove boost dependencies where possible
Unfortunately, I don't have any suggestions for reducing the boilerplate – the reference_wrapper solution turned out to be a lot more complex than I expected.
BTW, another ticket just reminded me that the afw COPYRIGHT file needs updating for 2020 and 2021 changes. Would this ticket be a good opportunity to do so?
Is this ready to merge after implementing krzys's suggestions.
implemented krzys's suggestions, looked into jbosch's afw table changes and made some minor
changes. All the clang-tidy changes are out.
Looks good; just one new tiny style comment on the PR; feel free to merge after that is addressed.
Sorry for all of the various things that kept slowing down this ticket, and thanks for bearing with it.