+const char *first_lopt(unsigned *i, unsigned *len);
+const char *next_lopt(const char *p, unsigned *i, unsigned *len);
+
+struct opt_alloc {
+ void *(*alloc)(size_t size);
+ void *(*realloc)(void *ptr, size_t size);
+ void (*free)(void *ptr);
+};
+extern struct opt_alloc opt_alloc;
+
+int parse_one(int *argc, char *argv[], enum opt_type is_early, unsigned *offset,
+ void (*errlog)(const char *fmt, ...));