}
// selection at the last level
int indexv = index.getInt(i);
if (!(b instanceof RArray)) {
// TODO: support language objects
if (indexv == 1) { throw RError.getInvalidTypeLength(ast, b.typeOf(), 1); // FIXME: a very obscure error message but what GNU-R returns
}
if (indexv > 1) { throw RError.getSubscriptBounds(ast); }
throw RError.getSelectLessThanOne(ast);
}
RArray a = (RArray) b;