The error was introduced on purpose. It was a change in expected behavior.

Originally Posted By: versions.txt
47.Fixed alias/identifier behaviour inconsistency when a recursive call is attempted which could have led to unexpected results. Both now halt the script with an error message instead.

I took this to mean that Khaled realized he was breaking backwards compatiblity, and so what would testing have prevented here? Your recursion test produces an error and returns success. Now maybe I'm wrong about Khaled's original intent, in which case the test would have prevented this. But that's not my interpretation of his release notes or subsequent posts.

Originally Posted By: Khaled
Users will unfortunately need to update their scripts as this change is important enough to keep in place.


He will be reverting the change not because it was an accident, but because people are raising a stink about it.