fix warning "missing return" + order of init