I have an application that changes the content of vertexShaderCode and fragmentShaderCode of the QML type ShaderProgram. Instead of recompiling and applying the new shader nothing happens. The application still uses the old shader code and continues to render. I can see that the new shader is loaded because onVertexShaderCodeChanged and onFragmentShaderCodeChanged both get called, but I can also see that the shader is not compiled because even if I provide faulty shader code I get no error message. I used loadSource() to update the shader code based on a changeable QRC URL modified from C++.
I am under the impression that updating the code should cause ShaderProgram to recompile and apply the new shader. If necessary I could see if I could provide a small example for this behavior.