In general, the rules for how an attribute binds for a given context are non-trivial
and the reader is pointed to GCC's documentation and Maurer and Wong's paper (See the
"References" section in the OpenCL specification
for details.)