IMHO. The wiki note is understandable. API limitation because it is possible to encounter an error? Come on, then just abandon coding: no main (), no errors.
Personally, I have never encountered problems in separating shaders in several objects, mainly on Nvidia, Amd and Intel. There may be limited drivers on other platforms, but this can be circumvented by processing text from multiple sources.
Personally, I see no good reason to avoid multiple objects, but I would say that it is rarely enough to cache objects to associate it with several programs.
source
share