Pre-DR: scanf %% ================ Should the scanf %% format skip whitespace before a % character in the input? For example, what should #include int main (void) { int dummy; return sscanf ("foo \t %bar1", "foo%%bar%d", &dummy); } return? The standard seems clear (7.19.6.2#8) that it should return 1 - that %% acts differently from single ordinary characters in the format string - but implementations differ on this, some returning 1 and some returning 0. I'm not sure there's a defect here and I suspect a change would be considered bad for compatibility (and you can still match a single % character with %1[%]), but whether it was intended for %% to eat whitespace could do with clarification.