When executing functions at compile time, there may be cases when it cannot be completed (when entering an infinite loop, for example). The compilation does not end either. I suggest creating a time limit (10 seconds would be optimal), crossing which will cause a compilation error.