Apparently, it does not like pragmas in the middle of a statement:
./missing/getopt_long.c: In function 'getopt_internal':
./missing/getopt_long.c:572:3: error: 'else' without a previous 'if'
++optind;
} else { /* takes (optional) argument */
optarg = NULL;
+ if (*place) { /* no white space */
DIAG_OFF_CAST_QUAL
- if (*place) /* no white space */
optarg = (char *)place;
DIAG_ON_CAST_QUAL
- else if (oli[1] != ':') { /* arg not optional */
+ } else if (oli[1] != ':') { /* arg not optional */
if (++optind >= nargc) { /* no arg */
place = EMSG;
if (PRINT_ERROR)