Clang on FreeBSD reports:
```
Building CXX object src/global/CMakeFiles/libglobal_objs.dir/pidfile.cc.o
../src/global/pidfile.cc:170:5: warning: ISO C++ requires field designators to be specified in declaration order; field 'l_whence' will be initialized after field 'l_start' [-Wreorder-init-list]
.l_start = 0,
^~~~~~~~~~~~
../src/global/pidfile.cc:169:17: note: previous initialization for field 'l_whence' is here
.l_whence = SEEK_SET,
^~~~~~~~
```
And Linux and BSD have different orders in their `struct flock`.
It also prevents the wrong initialisation on FreeBSD
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
int fd = fd_directs[WRITE_LIFE_NOT_SET];
uint64_t nr_tries = 0;
for (;;) {
- struct flock fl = { F_WRLCK,
- SEEK_SET };
+ struct flock fl = { .l_type = F_WRLCK,
+ .l_whence = SEEK_SET };
int r = ::fcntl(fd, F_OFD_SETLK, &fl);
if (r < 0) {
if (errno == EINVAL) {