Compilation issues with OpenMP <4.0 due to specification change regarding pre-defined shared attribute for const variables
The OpenMP specification reverted a clause in version 4.0+ regarding the implicit assignment of the shared attribute to const variables. This is now being reported as an issue when users build PuReMD with older C compilers with OpenMP support < 4.0.
The workaround I have in mind is to make all shared const variables firstprivate. While this will increase the amount of thread-local storage required (typically for a few pointers), this may also lead to a performance improvement.