+ switch(nvec) {
+ case 1:
+ module = 0;
+ encoding = 0;
+ root = vec[0];
+ break;
+ case 2:
+ module = vec[0];
+ encoding = 0;
+ root = vec[1];
+ break;
+ case 3:
+ module = vec[0];
+ encoding = vec[1];
+ root = vec[2];
+ break;
+ case 0:
+ error(0, "%s:%d: '%s' requires at least one argument",
+ cs->path, cs->line, whoami->name);
+ return -1;
+ default:
+ error(0, "%s:%d: '%s' requires at most three arguments",