title: Can't use printf or debugger in Intel SDK for OpenCL
body: <p>I'm using the Intel SDK for OpenCL with an Intel HD Graphics 4000 GPU to successfully run an OpenCL program.  I've made sure to link against the Intel OpenCL libraries since I also have Nvidia libraries installed.</p>
  
  <p>However, putting a <code>printf()</code> call in the kernel gives the OpenCL compiler error </p>
  
  <blockquote>
    <p>error: implicit declaration of function 'printf' is not allowed in OpenCL</p>
  </blockquote>
  
  <p>Also, I've enabled OpenCL kernel debugging in the Visual Studio 2012 plugin, and passed the following options to clBuildProgram:</p>
  
  <pre><code>"-g -s C:\\Path\\to\\my\\program.cl"
  </code></pre>
  
  <p>However, kernel breakpoints are skipped.  Hovering over the breakpoint gives the message: </p>
  
  <blockquote>
    <p>The breakpoint will not currently be hit. No symbols have been loaded for this document.</p>
  </blockquote>
  
  <p>My kernels are in a separate .cl file, and I'm setting the breakpoints the way I would for C/C++ code.  Is this the correct way to set breakpoints using the Intel SDK for OpenCL debugger?</p>
  
  <p><strong>Why are <code>printf()</code> calls and breakpoints not working with the Intel SDK for OpenCL?</strong></p>