So whilst messing around with STBI callbacks I notice, the skip callback's definition in LWJGL is:
int invoke(long user, int n);
whereas in stb, it is:
void (*skip) (void *user,int n);
Obviously the returned int has been added in LWJGL.
I don't know what happens to the returned value as none of the test I've run used the skip callback so I couldn't say whether it would issues.
Fixed in build 3.0.0b #23. Thanks!