In article <20131123234556.1b4ac14a...@mail.netbsd.org>, Mindaugas Rasiukevicius <rm...@netbsd.org> wrote: >chris...@zoulas.com (Christos Zoulas) wrote: >> On Nov 23, 11:24pm, rm...@netbsd.org (Mindaugas Rasiukevicius) wrote: >> -- Subject: Re: CVS commit: src/sys/coda >> >> | mp = mp == TAILQ_END(&mountlist) ? NULL : mp; >> | >> | Over: >> | >> | return mp; >> | >> | Everybody understood NULL, so why obfuscate the code? >> >> The point (as I understand it) is so that if you want to change to another >> ADT where end != NULL (are there any now, that we have banned CIRCLEQ?) >> using the END macro lets you s/FOOQ/BARQ/ and have it mostly work. > >Since 1990s (or even earlier) none of the lists in queue(3) had _END(), >apart from the circle queue (for a very obvious reason it makes sense). >Now that CIRCLEQ is banned - you added _END() for LIST and TAILQ. I do >not follow the logic. :)
*I* did appear do be adding it from the commit message, but in reality I was syncing with OpenBSD/FreeBSD. >I would remove _END() macros to keep the way it always was. Perhaps that's a good idea now that it is always NULL. >If the goal >is to improve the interface, then now is a good time to design a new API, >but we already have a long thread on tech-userlevel for this.. Yes, so let's leave it the way it is now, and we'll make all the changes in one go. christos