Bug 931090: handle recursion better; r=rail, f=atoll