[SR-774] Array of Range can cause an infinite loop while compiling Created: 19 Feb 2016 Updated: 29 Apr 2016
OSX 10.11.3 (15D21), (Swift master/f560f3caac06723, llvm stable/0d07a5d3d55078) also tested with Xcode 7.2.1
I experienced an infinite loop in the compiler while working with `Range`s. I tried to checkout the current version (Swift master/f560f3caac06723, llvm stable/0d07a5d3d55078) and tried to understand more about it.
Disclaimer: It's the first time I try to go deeper in this land, I'm just trying to be a bit more helpful than just reporting the bug but I might be completely wrong
Looks like the infinite loop happens at `CSSolver.cpp:1310`and `CSSolver.cpp:1739` where `ConstraintSystem::solveRec` is calling `ConstraintSystem::solveSimplified`that again calls `ConstraintSystem::solveRec`.
I will try to understand more but ATM I'm not experienced enough with this codebase to have proper fixes.
|Comment by Alex Manzella [ 19 Feb 2016 ]|
Looks like array of Range(s) cause the type checking to be very slow, the more you add Ranges to the array the more it slow down... 1 range okay, 2 ranges slower, .... 8 ranges VERY slow, 9 ranges infinite loop (? or just extremely slow ?).
|Comment by Alex Manzella [ 29 Apr 2016 ]|