This looks close to an OpenMP 5.0 implementation. I left comments inlined.
We need tests that show how non-selected alternatives *do not* impact the program. As an example, a template instantiation inside of a non-selected alternative is not actually performed.
We also need test with ill-formed metadirectives.
Dec 16 2020
Nov 5 2020
I don't have commit access. @jdoerfert, please commit the change if you think it's ready. Thanks.
Marking the "begin/end declare variant" feature as 'done' in the 5.1 table.
Nov 4 2020
Jan 22 2020
Nov 7 2019
I don't believe I have commit permissions on this. @ABataev, can you commit this? Thanks.