need not to initialize ci->err at toplevel