Using the latest OIIO and OSL master built with llvm 5.0.2 on linux, passing the following to oslc: shader cell_diffuse(output closure color result = 0) { result = diffuse(N) * cellnoise(u, v); } ...
Basically, the global variables needed to be moved into functions, and for some reason abs () was not compiling so simply tested signedness in line. cellnoise.zip ...