As a side note, I could use Enum property to pass value to cginc. And by using step() function, I can somehow workaround this problem. But I still think it’s best to not compile/run code that’s not necessary?
The documentation example for KeywordEnum and the multi_compile line there is the only time I’ve ever seen a comma used on that line, and I suspect it’s a typo.