+ /*
+ * This is annoying - I guess the
+ * "char * const argv[]" in the declaration
+ * of getopt() - and thus getopt_long() -
+ * means that it makes a promise not to
+ * shuffle the arguments, but here we are,
+ * shuffling the arguments.
+ *
+ * (No, it's not a promise that it won't
+ * modify any of the argument strings.
+ * It's a promise that it won't modify
+ * the array of pointers to the argument
+ * strings.)
+ *
+ * So squelch the cast warnings.
+ */