2.6.24, net/bluetooth/hci_sysfs.c, cleaned code remove compiler warning
PATCH 1/1 2.6.24, net/bluetooth/hci_sysfs.c, cleaned code remove compiler warning
Hi,
the attached Patch will remove a compiler warning in net/bluetooth/hci_sysfs.c:
hci_sysfs.c_new 2008-01-27 03:37:19.000000000 +0100 renamed from hci_sysfs.c 2008-01-27 03:48:47.000000000 +0100 +1 -1
@@ -332,7 +332,7 @@ struct device *dev; struct hci_conn *conn = container_of(work, struct hci_conn, work); - while (dev = device_find_child(&conn->dev, NULL, __match_tty)) { + while ((dev = device_find_child(&conn->dev, NULL, __match_tty))) { device_move(dev, NULL); put_device(dev); }
Quoted 3 lines · Michael K?hn
the attached Patch will remove a compiler warning in
net/bluetooth/hci_sysfs.c:
Please don't do this. I realize that gcc suggests just adding parenthesis, and yes, it makes the warning go away, but it's not sensible from a human semantic standpoint.
So if the warning bothers you, please change
while (dev = device_find_child(..)) {into something like
while ((dev = device_find_child(..)) != NULL) {which also gets rid of the warning, but now does it with something that makes sense to a human too.
Just arbitrarily adding another set of parentheses never made much sense to me. It's semantically still the exact same expression, just the fact that gcc suddenly doesn't warn about the assignment because it's "hidden" by the extra parenthesis is just odd.
Linus