It's still happening. Now (unlike before) it does show the widgets, but Chrome goes up to 100% CPU and nothing happens when I click the widgets.
It's not just loops that can trigger this stuff. It's also callbacks that trigger the same callbacks.
d = new Date(base);
d.setDate(d.getDate() + 1);
Changing rel() to do this fixes the loop problem, but something else is surely wrong, because the result page now looks like this: http://i.imgur.com/ZUAJg.png