Ahh right. Some of the features I am using are part of the OpenCL 1.2 C++ API. I have updated the link.

It should be noted that the 1.2 version of the C++ API can be used with the older versions of OpenCL. So this can be used with devices that only support OpenCL 1.1(NVIDIA).