On Fri, 29 Jul 2016, Piotr Stefaniak wrote:
On 2016-07-29 18:28, Pedro F. Giffuni wrote:
Log:
indent(1): fix struct termination detection.
Small style cleanup while here.
Wrong commit message. Actually committed here is: Support "f" and "F"
floating constant suffixes.
...
Also: Add large style bug in the fix.
Modified: head/usr.bin/indent/lexi.c
==============================================================================
--- head/usr.bin/indent/lexi.c Fri Jul 29 16:25:09 2016
(r303486)
+++ head/usr.bin/indent/lexi.c Fri Jul 29 16:28:51 2016
(r303487)
@@ -191,15 +191,13 @@ lexi(void)
}
}
while (1) {
- if (!(seensfx & 1) &&
- (*buf_ptr == 'U' || *buf_ptr == 'u')) {
+ if (!(seensfx & 1) && (*buf_ptr == 'U' || *buf_ptr == 'u')) {
CHECK_SIZE_TOKEN;
*e_token++ = *buf_ptr++;
seensfx |= 1;
continue;
}
- if (!(seensfx & 2) &&
- (*buf_ptr == 'L' || *buf_ptr == 'l')) {
+ if (!(seensfx & 2) && strchr("fFlL", *buf_ptr)) {
indent's style is mostly bad, but this doesn't seem to involve using
boolean tests for non-boolean str*() functions. indent didn't use
strchr() before, but it always does explict comparisons with 0 for
strcmp() and strncmp(). strstr() doesn't even return an integer,
so an explicit comparison is even more needed for it. Except the
"found" test doesn't require negative logic like !strcmp().
CHECK_SIZE_TOKEN;
if (buf_ptr[1] == buf_ptr[0])
*e_token++ = *buf_ptr++;
Bruce
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"