Thanks for your reply.
You’re absolutely right with regards to the result of a function not returning any value - should’ve guessed/tested this by myself.
The shader playground is quite cool and it’s great to experiment and modify existing shaders.
With regards to the shader compilation - the idea behind the question was simply to be able to use a fallback if, on a device, a shader does not work due to some features not supported on that device.
F.i. right now I’m doing a text rendering system and so in this case I’d rather prefer a lower quality rendering than no rendering and from the 4 Android devices I use for testing at the moment on 3 I have issues with the fwidth/dFdx/dFdy functions (i.e. the GL_OES_standard_derivatives extension).
I did check the GL_EXTENSIONS and each one reports the extension as available.
The preprocessor #define GL_OES_standard_derivatives seems to also be defined but as soon as I add a #extension GL_OES_standard_derivatives : enable to the code and/or use any of the functions, the shader does not work anymore and instead my quads get a solid color fill.
My devices are mostly cheap and/or older ones but, besides this shader issue, they easily handle everything my code needs so they should be quite good for testing lowspec requirements.
Also … I had to repeat myself … live builds with extremely short turn around times on multiple devices at the same time are an amazing feature.