title: Is glCompileShader optional?
body: <p>While debugging my system, I found out that all the shaders I used were never compiled. All the GLSL Programs were happily linked and working like a charm. </p>
  
  <p>I have searched the entire code base for calls to <code>glCompileShader</code>, but none were found. </p>
  
  <p>My question then is: Is this a specific behaviour of the implementation I am working with? Is shader compilation carried out implicitly when linking a program? Is it optional? If that is the case, what advantages are there in doing it explicitly, apart from retrieving the error log? </p>
  
  <p>I could not find any case such as mine in the documentation, if I missed something can you please point me to it? </p>
  
  <p>My vendor is NVIDIA (driver 337.88)</p>
  
  <p><strong>EDIT:</strong> Also, I am <em>NOT</em> using <code>glCreateShaderProgram()</code>, but simply <code>glCreateProgram()</code> for the creation of shader programs.</p>