--- src/apprentice.c +++ src/apprentice.c 2013-09-30 00:00:00.000000000 +0000 @@ -2072,8 +2072,16 @@ check_format_type(const char *ptr, int t quad = 1; /*FALLTHROUGH*/ case FILE_FMT_NUM: + if (*ptr == '#') + ptr++; + if (*ptr == ' ') + ptr++; if (*ptr == '-') ptr++; + if (*ptr == '+') + ptr++; + if (*ptr == '\'') + ptr++; if (*ptr == '.') ptr++; while (isdigit((unsigned char)*ptr)) ptr++; @@ -2115,6 +2123,9 @@ check_format_type(const char *ptr, int t default: return -1; } + case 'o': + case 'x': + case 'X': case 'd': return 0; default: