If arguments->size() == 0, arguments is leaked memory.
Can't we just assert that nArgs != 0?