The following changes were made to shhopt for Netpbm: - OPT_FLOAT (floating point number) data type added - optParseOptions2() added. Advantages over optParseOptions(): You can have a syntax where there is no such thing as a short option (e.g. -a. Maybe stacked like -tanp). Then the long options can have either 1 or 2 dashes (e.g. -width or --width). Of course, -w could be an abbreviation of -width; that's not the same thing as a short option. - optStruct longName changed from char * to const char * to avoid compiler warnings (with -Wwrite-strings) when you assign a string literal to it (which is the normal case). Note that pbmplus.h contains the OPTENTRY macro, which makes shhopt much easier to use.