{
int negsub;
uintmax_t sub = substitute (&negsub) & maxval;
+ /* FIXME: This is the only place where GNU_FORMAT differs from
+ OLDGNU_FORMAT. Apart from this they are completely identical. */
uintmax_t s = (negsub &= archive_format == GNU_FORMAT) ? - sub : sub;
char subbuf[UINTMAX_STRSIZE_BOUND + 1];
char *sub_string = STRINGIFY_BIGINT (s, subbuf + 1);
USTAR_FORMAT, /* POSIX.1-1988 (ustar) format */
POSIX_FORMAT, /* POSIX.1-2001 format */
STAR_FORMAT, /* Star format defined in 1994 */
- GNU_FORMAT /* POSIX format with GNU extensions */
+ GNU_FORMAT /* Same as OLDGNU_FORMAT with one exception:
+ see FIXME note for to_chars() function
+ (create.c:189) */
};
/* Information about a sparse file. */