// i = C token to the right of type static int tok_leftScanType(LS tok, int i) { // first skip ellipsis if (subListEq(tok, i-6, ".", "", ".", "", ".")) i -= 6; // skip array brackets while (eqGet(tok, i-2, "]") && eqGet(tok, i-4, "[")) i -= 4; i = tok_leftScanTypeArgsOpt(tok, i); do { if (!isIdentifier(get(tok, i-2))) ret i; // weird i = tok_leftScanType(tok, i-2); // Is this really supposed to be recursive?? } while (eqGet(tok, i-2, ".")); ret i; }