Hello Synths,
I was reading the Literals
documentation and tried to check the Compiler Limits
section. It says that
A single function may contain no more than 256 selectors. If this limit is exceeded, a compiler error is printed:
ERROR: Selector table too big: too many classes, method selectors or function definitions in this function. Simplify the function.
On Windows 10, SC 3.10.3, I tried to evaluate 602 selectors, and everything works fine. But when I try to evaluate 702 selectors the whole program crashes and a qtwebengineprocess.exe appears consuming around 20% of CPU(i7). Is it supposed to print an error instead of crashing? I have not post it on github yet because I am really new to these development topics and I was only trying to dig some basic stuff on the help filesā¦
Here is the code:
//602 selectors - 300 SinOsc, 300 .ar, 1 {}, 1
{[SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),]}
//702 selectors - 350 SinOsc, 350 .ar, 1 {}, 1
{[SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),SinOsc.ar(),]}
All the best,
Zc