+ case "${usergroup_phase}" in
+ local run_cmd
+ run_cmd=run_su
+ shift
+ run_su /opt/pkg/bin/bmake all BATCH=1 DEPENDS_TARGET=/nonexistent WRKLOG=/tmp/bulklog/picom-11.2/work.log
+ su pbulk -c '"$@"' make /opt/pkg/bin/bmake all BATCH=1 DEPENDS_TARGET=/nonexistent WRKLOG=/tmp/bulklog/picom-11.2/work.log
===> Building for picom-11.2
ninja: Entering directory `output'
[1/35] Compiling C object src/picom.p/x.c.o
In file included from ../src/backend/backend.h:9,
                 from ../src/common.h:54,
                 from ../src/x.c:26:
../src/config.h: In function 'parse_backend':
../src/config.h:338:22: warning: implicit declaration of function 'strcasecmp'; did you mean 'strncmp'? [-Wimplicit-function-declaration]
  338 |                 if (!strcasecmp(str, BACKEND_STRS[i])) {
      |                      ^~~~~~~~~~
      |                      strncmp
../src/common.h: In function 'get_time_timespec':
../src/common.h:453:9: warning: implicit declaration of function 'clock_gettime' [-Wimplicit-function-declaration]
  453 |         clock_gettime(CLOCK_MONOTONIC, &tm);
      |         ^~~~~~~~~~~~~
../src/x.c: In function 'wid_get_text_prop':
../src/x.c:226:31: warning: implicit declaration of function 'strnlen'; did you mean 'strlen'? [-Wimplicit-function-declaration]
  226 |                     (uint32_t)strnlen(data + current_offset, length - current_offset) + 1;
      |                               ^~~~~~~
      |                               strlen
../src/x.c:243:13: warning: implicit declaration of function 'posix_memalign' [-Wimplicit-function-declaration]
  243 |         if (posix_memalign(&buf, alignof(char *), length + sizeof(char *) * nstr + 1) != 0) {
      |             ^~~~~~~~~~~~~~
In file included from ../src/common.h:31:
../src/x.c: In function 'x_set_region':
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/x.c:493:48: note: in expansion of macro 'to_u16_checked'
  493 |                                       .width = to_u16_checked(rects[i].x2 - rects[i].x1),
      |                                                ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/x.c:494:49: note: in expansion of macro 'to_u16_checked'
  494 |                                       .height = to_u16_checked(rects[i].y2 - rects[i].y1)};
      |                                                 ^~~~~~~~~~~~~~
../src/x.c: In function 'x_create_region':
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/x.c:520:48: note: in expansion of macro 'to_u16_checked'
  520 |                                       .width = to_u16_checked(rects[i].x2 - rects[i].x1),
      |                                                ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/x.c:521:49: note: in expansion of macro 'to_u16_checked'
  521 |                                       .height = to_u16_checked(rects[i].y2 - rects[i].y1)};
      |                                                 ^~~~~~~~~~~~~~
../src/x.c: In function 'x_set_picture_clip_region':
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/x.c:550:30: note: in expansion of macro 'to_u16_checked'
  550 |                     .width = to_u16_checked(rects[i].x2 - rects[i].x1),
      |                              ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/x.c:551:31: note: in expansion of macro 'to_u16_checked'
  551 |                     .height = to_u16_checked(rects[i].y2 - rects[i].y1),
      |                               ^~~~~~~~~~~~~~
../src/x.c: In function 'x_create_pixmap':
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/x.c:724:39: note: in expansion of macro 'to_u16_checked'
  724 |                                       to_u16_checked(width), to_u16_checked(height));
      |                                       ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/x.c:724:62: note: in expansion of macro 'to_u16_checked'
  724 |                                       to_u16_checked(width), to_u16_checked(height));
      |                                                              ^~~~~~~~~~~~~~
[2/35] Compiling C object src/picom.p/c2.c.o
In file included from ../src/backend/backend.h:9,
                 from ../src/common.h:54,
                 from ../src/c2.c:29:
../src/config.h: In function 'parse_backend':
../src/config.h:338:22: warning: implicit declaration of function 'strcasecmp'; did you mean 'strncmp'? [-Wimplicit-function-declaration]
  338 |                 if (!strcasecmp(str, BACKEND_STRS[i])) {
      |                      ^~~~~~~~~~
      |                      strncmp
../src/common.h: In function 'get_time_timespec':
../src/common.h:453:9: warning: implicit declaration of function 'clock_gettime' [-Wimplicit-function-declaration]
  453 |         clock_gettime(CLOCK_MONOTONIC, &tm);
      |         ^~~~~~~~~~~~~
../src/c2.c: In function 'c2_parse_target':
../src/c2.c:608:22: warning: implicit declaration of function 'strndup'; did you mean 'strncmp'? [-Wimplicit-function-declaration]
  608 |         pleaf->tgt = strndup(&pattern[offset - tgtlen], (size_t)tgtlen);
      |                      ^~~~~~~
      |                      strncmp
../src/c2.c:608:20: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  608 |         pleaf->tgt = strndup(&pattern[offset - tgtlen], (size_t)tgtlen);
      |                    ^
../src/c2.c: In function 'c2_parse_pattern':
../src/c2.c:912:61: warning: initialization of 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  912 |                                         scoped_charp tstr = strndup(pattern + offset + 1, 2);
      |                                                             ^~~~~~~
../src/c2.c:935:33: warning: implicit declaration of function 'strdup'; did you mean 'strcmp'? [-Wimplicit-function-declaration]
  935 |                 pleaf->ptnstr = strdup(tptnstr);
      |                                 ^~~~~~
      |                                 strcmp
../src/c2.c:935:31: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  935 |                 pleaf->ptnstr = strdup(tptnstr);
      |                               ^
../src/c2.c: In function 'c2_parse_legacy':
../src/c2.c:1029:23: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
 1029 |         pleaf->ptnstr = strdup(pattern + offset);
      |                       ^
../src/c2.c: In function 'c2_match_once_leaf':
../src/c2.c:1503:84: warning: assignment to 'const char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
 1503 |                                                 targets[i] = targets_free_inner[i] = strndup(
      |                                                                                    ^
../src/c2.c:1557:55: warning: implicit declaration of function 'strcasestr'; did you mean 'strstr'? [-Wimplicit-function-declaration]
 1557 |                                                 res = strcasestr(tgt, pleaf->ptnstr);
      |                                                       ^~~~~~~~~~
      |                                                       strstr
../src/c2.c:1564:56: warning: implicit declaration of function 'strncasecmp'; did you mean 'strncmp'? [-Wimplicit-function-declaration]
 1564 |                                                 res = !strncasecmp(tgt, pleaf->ptnstr,
      |                                                        ^~~~~~~~~~~
      |                                                        strncmp
[3/35] Compiling C object src/picom.p/picom.c.o
In file included from ../src/backend/backend.h:9,
                 from ../src/common.h:54,
                 from ../src/picom.c:43:
../src/config.h: In function 'parse_backend':
../src/config.h:338:22: warning: implicit declaration of function 'strcasecmp'; did you mean 'strncmp'? [-Wimplicit-function-declaration]
  338 |                 if (!strcasecmp(str, BACKEND_STRS[i])) {
      |                      ^~~~~~~~~~
      |                      strncmp
../src/common.h: In function 'get_time_timespec':
../src/common.h:453:9: warning: implicit declaration of function 'clock_gettime' [-Wimplicit-function-declaration]
  453 |         clock_gettime(CLOCK_MONOTONIC, &tm);
      |         ^~~~~~~~~~~~~
In file included from ../src/utils.h:4,
                 from ../src/backend/gl/glx.h:12,
                 from ../src/common.h:45:
../src/picom.c: In function 'schedule_render':
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:727:52: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  727 | #define ev_is_active(ev)                     (0 + ((ev_watcher *)(void *)(ev))->active) /* ro, true when the watcher has been started */
      |                                                   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:354:25: note: in expansion of macro 'ev_is_active'
  354 |                 assert(!ev_is_active(&ps->draw_timer));
      |                         ^~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:727:52: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  727 | #define ev_is_active(ev)                     (0 + ((ev_watcher *)(void *)(ev))->active) /* ro, true when the watcher has been started */
      |                                                   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:412:17: note: in expansion of macro 'ev_is_active'
  412 |         assert(!ev_is_active(&ps->draw_timer));
      |                 ^~~~~~~~~~~~
In file included from ../src/picom.c:40:
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:699:52: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  699 | #define ev_timer_set(ev,after_,repeat_)      do { ((ev_watcher_time *)(ev))->at = (after_); (ev)->repeat = (repeat_); } while (0)
      |                                                   ~^~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:413:9: note: in expansion of macro 'ev_timer_set'
  413 |         ev_timer_set(&ps->draw_timer, delay_s, 0);
      |         ^~~~~~~~~~~~
../src/picom.c: In function 'paint_preprocess':
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:727:52: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  727 | #define ev_is_active(ev)                     (0 + ((ev_watcher *)(void *)(ev))->active) /* ro, true when the watcher has been started */
      |                                                   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:1128:37: note: in expansion of macro 'ev_is_active'
 1128 |                         } else if (!ev_is_active(&ps->unredir_timer)) {
      |                                     ^~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:699:52: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  699 | #define ev_timer_set(ev,after_,repeat_)      do { ((ev_watcher_time *)(ev))->at = (after_); (ev)->repeat = (repeat_); } while (0)
      |                                                   ~^~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:1129:33: note: in expansion of macro 'ev_timer_set'
 1129 |                                 ev_timer_set(
      |                                 ^~~~~~~~~~~~
../src/picom.c: In function 'register_cm':
../src/picom.c:1294:43: warning: conversion from 'long unsigned int' to 'int' may change value [-Wconversion]
 1294 |                 if (gethostname(hostname, hostname_max) == 0) {
      |                                           ^~~~~~~~~~~~
../src/picom.c:1336:21: warning: implicit declaration of function 'asprintf'; did you mean 'vsprintf'? [-Wimplicit-function-declaration]
 1336 |                 if (asprintf(&buf, "%s%d", register_prop, ps->c.screen) < 0) {
      |                     ^~~~~~~~
      |                     vsprintf
../src/picom.c: In function 'init_debug_window':
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/picom.c:1441:26: note: in expansion of macro 'to_u16_checked'
 1441 |                          to_u16_checked(ps->root_width), to_u16_checked(ps->root_height),
      |                          ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/picom.c:1441:58: note: in expansion of macro 'to_u16_checked'
 1441 |                          to_u16_checked(ps->root_width), to_u16_checked(ps->root_height),
      |                                                          ^~~~~~~~~~~~~~
../src/picom.c: In function 'draw_callback_impl':
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:727:52: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  727 | #define ev_is_active(ev)                     (0 + ((ev_watcher *)(void *)(ev))->active) /* ro, true when the watcher has been started */
      |                                                   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:1830:30: note: in expansion of macro 'ev_is_active'
 1830 |         if (!fade_running && ev_is_active(&ps->fade_timer)) {
      |                              ^~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:727:52: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  727 | #define ev_is_active(ev)                     (0 + ((ev_watcher *)(void *)(ev))->active) /* ro, true when the watcher has been started */
      |                                                   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:1832:37: note: in expansion of macro 'ev_is_active'
 1832 |         } else if (fade_running && !ev_is_active(&ps->fade_timer)) {
      |                                     ^~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:699:52: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  699 | #define ev_timer_set(ev,after_,repeat_)      do { ((ev_watcher_time *)(ev))->at = (after_); (ev)->repeat = (repeat_); } while (0)
      |                                                   ~^~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:1833:17: note: in expansion of macro 'ev_timer_set'
 1833 |                 ev_timer_set(&ps->fade_timer, fade_timeout(ps), 0);
      |                 ^~~~~~~~~~~~
../src/picom.c: In function 'load_shader_source':
../src/picom.c:1954:23: warning: implicit declaration of function 'strdup'; did you mean 'strcmp'? [-Wimplicit-function-declaration]
 1954 |         shader->key = strdup(path);
      |                       ^~~~~~
      |                       strcmp
../src/picom.c:1954:21: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
 1954 |         shader->key = strdup(path);
      |                     ^
../src/picom.c:1963:19: warning: implicit declaration of function 'fileno' [-Wimplicit-function-declaration]
 1963 |         if (fstat(fileno(f), &statbuf) < 0) {
      |                   ^~~~~~
../src/picom.c: In function 'session_init':
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:691:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  691 |   ((ev_watcher *)(void *)(ev))->active  =       \
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:712:51: note: in expansion of macro 'ev_init'
  712 | #define ev_io_init(ev,cb,fd,events)          do { ev_init ((ev), (cb)); ev_io_set ((ev),(fd),(events)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2491:9: note: in expansion of macro 'ev_io_init'
 2491 |         ev_io_init(&ps->xiow, x_event_callback, ConnectionNumber(ps->c.dpy), EV_READ);
      |         ^~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:692:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  692 |   ((ev_watcher *)(void *)(ev))->pending = 0;    \
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:712:51: note: in expansion of macro 'ev_init'
  712 | #define ev_io_init(ev,cb,fd,events)          do { ev_init ((ev), (cb)); ev_io_set ((ev),(fd),(events)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2491:9: note: in expansion of macro 'ev_io_init'
 2491 |         ev_io_init(&ps->xiow, x_event_callback, ConnectionNumber(ps->c.dpy), EV_READ);
      |         ^~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:737:50: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  737 | # define ev_set_priority(ev,pri)             (   (ev_watcher *)(void *)(ev))->priority = (pri)
      |                                              ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:693:3: note: in expansion of macro 'ev_set_priority'
  693 |   ev_set_priority ((ev), 0);                    \
      |   ^~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:712:51: note: in expansion of macro 'ev_init'
  712 | #define ev_io_init(ev,cb,fd,events)          do { ev_init ((ev), (cb)); ev_io_set ((ev),(fd),(events)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2491:9: note: in expansion of macro 'ev_io_init'
 2491 |         ev_io_init(&ps->xiow, x_event_callback, ConnectionNumber(ps->c.dpy), EV_READ);
      |         ^~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:744:79: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  744 | # define ev_set_cb(ev,cb_)                   (ev_cb_ (ev) = (cb_), memmove (&((ev_watcher *)(ev))->cb, &ev_cb_ (ev), sizeof (ev_cb_ (ev))))
      |                                                                              ~^~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:694:3: note: in expansion of macro 'ev_set_cb'
  694 |   ev_set_cb ((ev), cb_);                        \
      |   ^~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:712:51: note: in expansion of macro 'ev_init'
  712 | #define ev_io_init(ev,cb,fd,events)          do { ev_init ((ev), (cb)); ev_io_set ((ev),(fd),(events)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2491:9: note: in expansion of macro 'ev_io_init'
 2491 |         ev_io_init(&ps->xiow, x_event_callback, ConnectionNumber(ps->c.dpy), EV_READ);
      |         ^~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:691:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  691 |   ((ev_watcher *)(void *)(ev))->active  =       \
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:2493:9: note: in expansion of macro 'ev_init'
 2493 |         ev_init(&ps->unredir_timer, tmout_unredir_callback);
      |         ^~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:692:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  692 |   ((ev_watcher *)(void *)(ev))->pending = 0;    \
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:2493:9: note: in expansion of macro 'ev_init'
 2493 |         ev_init(&ps->unredir_timer, tmout_unredir_callback);
      |         ^~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:737:50: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  737 | # define ev_set_priority(ev,pri)             (   (ev_watcher *)(void *)(ev))->priority = (pri)
      |                                              ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:693:3: note: in expansion of macro 'ev_set_priority'
  693 |   ev_set_priority ((ev), 0);                    \
      |   ^~~~~~~~~~~~~~~
../src/picom.c:2493:9: note: in expansion of macro 'ev_init'
 2493 |         ev_init(&ps->unredir_timer, tmout_unredir_callback);
      |         ^~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:744:79: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  744 | # define ev_set_cb(ev,cb_)                   (ev_cb_ (ev) = (cb_), memmove (&((ev_watcher *)(ev))->cb, &ev_cb_ (ev), sizeof (ev_cb_ (ev))))
      |                                                                              ~^~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:694:3: note: in expansion of macro 'ev_set_cb'
  694 |   ev_set_cb ((ev), cb_);                        \
      |   ^~~~~~~~~
../src/picom.c:2493:9: note: in expansion of macro 'ev_init'
 2493 |         ev_init(&ps->unredir_timer, tmout_unredir_callback);
      |         ^~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:691:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  691 |   ((ev_watcher *)(void *)(ev))->active  =       \
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:2494:9: note: in expansion of macro 'ev_init'
 2494 |         ev_init(&ps->draw_timer, draw_callback);
      |         ^~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:692:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  692 |   ((ev_watcher *)(void *)(ev))->pending = 0;    \
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:2494:9: note: in expansion of macro 'ev_init'
 2494 |         ev_init(&ps->draw_timer, draw_callback);
      |         ^~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:737:50: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  737 | # define ev_set_priority(ev,pri)             (   (ev_watcher *)(void *)(ev))->priority = (pri)
      |                                              ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:693:3: note: in expansion of macro 'ev_set_priority'
  693 |   ev_set_priority ((ev), 0);                    \
      |   ^~~~~~~~~~~~~~~
../src/picom.c:2494:9: note: in expansion of macro 'ev_init'
 2494 |         ev_init(&ps->draw_timer, draw_callback);
      |         ^~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:744:79: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  744 | # define ev_set_cb(ev,cb_)                   (ev_cb_ (ev) = (cb_), memmove (&((ev_watcher *)(ev))->cb, &ev_cb_ (ev), sizeof (ev_cb_ (ev))))
      |                                                                              ~^~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:694:3: note: in expansion of macro 'ev_set_cb'
  694 |   ev_set_cb ((ev), cb_);                        \
      |   ^~~~~~~~~
../src/picom.c:2494:9: note: in expansion of macro 'ev_init'
 2494 |         ev_init(&ps->draw_timer, draw_callback);
      |         ^~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:691:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  691 |   ((ev_watcher *)(void *)(ev))->active  =       \
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:2496:9: note: in expansion of macro 'ev_init'
 2496 |         ev_init(&ps->fade_timer, fade_timer_callback);
      |         ^~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:692:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  692 |   ((ev_watcher *)(void *)(ev))->pending = 0;    \
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:2496:9: note: in expansion of macro 'ev_init'
 2496 |         ev_init(&ps->fade_timer, fade_timer_callback);
      |         ^~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:737:50: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  737 | # define ev_set_priority(ev,pri)             (   (ev_watcher *)(void *)(ev))->priority = (pri)
      |                                              ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:693:3: note: in expansion of macro 'ev_set_priority'
  693 |   ev_set_priority ((ev), 0);                    \
      |   ^~~~~~~~~~~~~~~
../src/picom.c:2496:9: note: in expansion of macro 'ev_init'
 2496 |         ev_init(&ps->fade_timer, fade_timer_callback);
      |         ^~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:744:79: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  744 | # define ev_set_cb(ev,cb_)                   (ev_cb_ (ev) = (cb_), memmove (&((ev_watcher *)(ev))->cb, &ev_cb_ (ev), sizeof (ev_cb_ (ev))))
      |                                                                              ~^~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:694:3: note: in expansion of macro 'ev_set_cb'
  694 |   ev_set_cb ((ev), cb_);                        \
      |   ^~~~~~~~~
../src/picom.c:2496:9: note: in expansion of macro 'ev_init'
 2496 |         ev_init(&ps->fade_timer, fade_timer_callback);
      |         ^~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:691:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  691 |   ((ev_watcher *)(void *)(ev))->active  =       \
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:715:51: note: in expansion of macro 'ev_init'
  715 | #define ev_signal_init(ev,cb,signum)         do { ev_init ((ev), (cb)); ev_signal_set ((ev), (signum)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2499:9: note: in expansion of macro 'ev_signal_init'
 2499 |         ev_signal_init(&ps->usr1_signal, reset_enable, SIGUSR1);
      |         ^~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:692:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  692 |   ((ev_watcher *)(void *)(ev))->pending = 0;    \
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:715:51: note: in expansion of macro 'ev_init'
  715 | #define ev_signal_init(ev,cb,signum)         do { ev_init ((ev), (cb)); ev_signal_set ((ev), (signum)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2499:9: note: in expansion of macro 'ev_signal_init'
 2499 |         ev_signal_init(&ps->usr1_signal, reset_enable, SIGUSR1);
      |         ^~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:737:50: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  737 | # define ev_set_priority(ev,pri)             (   (ev_watcher *)(void *)(ev))->priority = (pri)
      |                                              ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:693:3: note: in expansion of macro 'ev_set_priority'
  693 |   ev_set_priority ((ev), 0);                    \
      |   ^~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:715:51: note: in expansion of macro 'ev_init'
  715 | #define ev_signal_init(ev,cb,signum)         do { ev_init ((ev), (cb)); ev_signal_set ((ev), (signum)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2499:9: note: in expansion of macro 'ev_signal_init'
 2499 |         ev_signal_init(&ps->usr1_signal, reset_enable, SIGUSR1);
      |         ^~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:744:79: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  744 | # define ev_set_cb(ev,cb_)                   (ev_cb_ (ev) = (cb_), memmove (&((ev_watcher *)(ev))->cb, &ev_cb_ (ev), sizeof (ev_cb_ (ev))))
      |                                                                              ~^~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:694:3: note: in expansion of macro 'ev_set_cb'
  694 |   ev_set_cb ((ev), cb_);                        \
      |   ^~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:715:51: note: in expansion of macro 'ev_init'
  715 | #define ev_signal_init(ev,cb,signum)         do { ev_init ((ev), (cb)); ev_signal_set ((ev), (signum)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2499:9: note: in expansion of macro 'ev_signal_init'
 2499 |         ev_signal_init(&ps->usr1_signal, reset_enable, SIGUSR1);
      |         ^~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:691:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  691 |   ((ev_watcher *)(void *)(ev))->active  =       \
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:715:51: note: in expansion of macro 'ev_init'
  715 | #define ev_signal_init(ev,cb,signum)         do { ev_init ((ev), (cb)); ev_signal_set ((ev), (signum)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2500:9: note: in expansion of macro 'ev_signal_init'
 2500 |         ev_signal_init(&ps->int_signal, exit_enable, SIGINT);
      |         ^~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:692:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  692 |   ((ev_watcher *)(void *)(ev))->pending = 0;    \
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:715:51: note: in expansion of macro 'ev_init'
  715 | #define ev_signal_init(ev,cb,signum)         do { ev_init ((ev), (cb)); ev_signal_set ((ev), (signum)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2500:9: note: in expansion of macro 'ev_signal_init'
 2500 |         ev_signal_init(&ps->int_signal, exit_enable, SIGINT);
      |         ^~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:737:50: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  737 | # define ev_set_priority(ev,pri)             (   (ev_watcher *)(void *)(ev))->priority = (pri)
      |                                              ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:693:3: note: in expansion of macro 'ev_set_priority'
  693 |   ev_set_priority ((ev), 0);                    \
      |   ^~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:715:51: note: in expansion of macro 'ev_init'
  715 | #define ev_signal_init(ev,cb,signum)         do { ev_init ((ev), (cb)); ev_signal_set ((ev), (signum)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2500:9: note: in expansion of macro 'ev_signal_init'
 2500 |         ev_signal_init(&ps->int_signal, exit_enable, SIGINT);
      |         ^~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:744:79: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  744 | # define ev_set_cb(ev,cb_)                   (ev_cb_ (ev) = (cb_), memmove (&((ev_watcher *)(ev))->cb, &ev_cb_ (ev), sizeof (ev_cb_ (ev))))
      |                                                                              ~^~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:694:3: note: in expansion of macro 'ev_set_cb'
  694 |   ev_set_cb ((ev), cb_);                        \
      |   ^~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:715:51: note: in expansion of macro 'ev_init'
  715 | #define ev_signal_init(ev,cb,signum)         do { ev_init ((ev), (cb)); ev_signal_set ((ev), (signum)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2500:9: note: in expansion of macro 'ev_signal_init'
 2500 |         ev_signal_init(&ps->int_signal, exit_enable, SIGINT);
      |         ^~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:691:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  691 |   ((ev_watcher *)(void *)(ev))->active  =       \
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:719:51: note: in expansion of macro 'ev_init'
  719 | #define ev_prepare_init(ev,cb)               do { ev_init ((ev), (cb)); ev_prepare_set ((ev)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2518:9: note: in expansion of macro 'ev_prepare_init'
 2518 |         ev_prepare_init(&ps->event_check, handle_queued_x_events);
      |         ^~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:692:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  692 |   ((ev_watcher *)(void *)(ev))->pending = 0;    \
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:719:51: note: in expansion of macro 'ev_init'
  719 | #define ev_prepare_init(ev,cb)               do { ev_init ((ev), (cb)); ev_prepare_set ((ev)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2518:9: note: in expansion of macro 'ev_prepare_init'
 2518 |         ev_prepare_init(&ps->event_check, handle_queued_x_events);
      |         ^~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:737:50: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  737 | # define ev_set_priority(ev,pri)             (   (ev_watcher *)(void *)(ev))->priority = (pri)
      |                                              ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:693:3: note: in expansion of macro 'ev_set_priority'
  693 |   ev_set_priority ((ev), 0);                    \
      |   ^~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:719:51: note: in expansion of macro 'ev_init'
  719 | #define ev_prepare_init(ev,cb)               do { ev_init ((ev), (cb)); ev_prepare_set ((ev)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2518:9: note: in expansion of macro 'ev_prepare_init'
 2518 |         ev_prepare_init(&ps->event_check, handle_queued_x_events);
      |         ^~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:744:79: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  744 | # define ev_set_cb(ev,cb_)                   (ev_cb_ (ev) = (cb_), memmove (&((ev_watcher *)(ev))->cb, &ev_cb_ (ev), sizeof (ev_cb_ (ev))))
      |                                                                              ~^~~~~~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:694:3: note: in expansion of macro 'ev_set_cb'
  694 |   ev_set_cb ((ev), cb_);                        \
      |   ^~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:719:51: note: in expansion of macro 'ev_init'
  719 | #define ev_prepare_init(ev,cb)               do { ev_init ((ev), (cb)); ev_prepare_set ((ev)); } while (0)
      |                                                   ^~~~~~~
../src/picom.c:2518:9: note: in expansion of macro 'ev_prepare_init'
 2518 |         ev_prepare_init(&ps->event_check, handle_queued_x_events);
      |         ^~~~~~~~~~~~~~~
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:737:50: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  737 | # define ev_set_priority(ev,pri)             (   (ev_watcher *)(void *)(ev))->priority = (pri)
      |                                              ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:2521:9: note: in expansion of macro 'ev_set_priority'
 2521 |         ev_set_priority(&ps->event_check, EV_MINPRI);
      |         ^~~~~~~~~~~~~~~
../src/picom.c: In function 'session_run':
/home/pbulk/build/x11/picom/work/.buildlink/include/ev/ev.h:699:52: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  699 | #define ev_timer_set(ev,after_,repeat_)      do { ((ev_watcher_time *)(ev))->at = (after_); (ev)->repeat = (repeat_); } while (0)
      |                                                   ~^~~~~~~~~~~~~~~~~~~~~~~~
../src/picom.c:2831:17: note: in expansion of macro 'ev_timer_set'
 2831 |                 ev_timer_set(&ps->draw_timer, 0, 0);
      |                 ^~~~~~~~~~~~
../src/picom.c: In function 'main':
../src/picom.c:2945:34: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
 2945 |                         pid_file = strdup(ps_g->o.write_pid_path);
      |                                  ^
[4/35] Compiling C object src/picom.p/config.c.o
In file included from ../src/backend/backend.h:9,
                 from ../src/common.h:54,
                 from ../src/config.c:24:
../src/config.h: In function 'parse_backend':
../src/config.h:338:22: warning: implicit declaration of function 'strcasecmp'; did you mean 'strncmp'? [-Wimplicit-function-declaration]
  338 |                 if (!strcasecmp(str, BACKEND_STRS[i])) {
      |                      ^~~~~~~~~~
      |                      strncmp
../src/common.h: In function 'get_time_timespec':
../src/common.h:453:9: warning: implicit declaration of function 'clock_gettime' [-Wimplicit-function-declaration]
  453 |         clock_gettime(CLOCK_MONOTONIC, &tm);
      |         ^~~~~~~~~~~~~
../src/config.c: In function 'xdg_config_home':
../src/config.c:51:24: warning: implicit declaration of function 'strdup'; did you mean 'strcmp'? [-Wimplicit-function-declaration]
   51 |                 xdgh = strdup(xdgh);
      |                        ^~~~~~
      |                        strcmp
../src/config.c:51:22: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
   51 |                 xdgh = strdup(xdgh);
      |                      ^
../src/config.c: In function '__test_h_xdg_config_dirs':
../src/config.c:101:25: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  101 |                 old_var = strdup(old_var);
      |                         ^
../src/config.c:103:9: warning: implicit declaration of function 'unsetenv'; did you mean 'getenv'? [-Wimplicit-function-declaration]
  103 |         unsetenv("XDG_CONFIG_DIRS");
      |         ^~~~~~~~
      |         getenv
../src/config.c:110:9: warning: implicit declaration of function 'setenv'; did you mean 'getenv'? [-Wimplicit-function-declaration]
  110 |         setenv("XDG_CONFIG_DIRS", ".:.:/etc/xdg:.:/:", 1);
      |         ^~~~~~
      |         getenv
../src/config.c: In function 'locate_auxiliary_file_at':
../src/config.c:559:33: warning: implicit declaration of function 'realpath' [-Wimplicit-function-declaration]
  559 |                 char *abspath = realpath(path, NULL);
      |                                 ^~~~~~~~
../src/config.c:559:33: warning: initialization of 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
../src/config.c: In function 'locate_auxiliary_file':
../src/config.c:585:32: warning: returning 'int' from a function with return type 'char *' makes pointer from integer without a cast [-Wint-conversion]
  585 |                         return realpath(path, NULL);
      |                                ^~~~~~~~~~~~~~~~~~~~
../src/config.c: In function 'parse_debug_options':
../src/config.c:690:35: warning: initialization of 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  690 |         scoped_charp debug_copy = strdup(debug);
      |                                   ^~~~~~
../src/config.c: In function 'parse_rule_window_shader':
../src/config.c:714:47: warning: initialization of 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  714 |         scoped_charp untrimed_shader_source = strdup(src);
      |                                               ^~~~~~
[5/35] Compiling C object src/picom.p/vsync.c.o
In file included from ../src/backend/backend.h:9,
                 from ../src/common.h:54,
                 from ../src/vsync.c:6:
../src/config.h: In function 'parse_backend':
../src/config.h:338:22: warning: implicit declaration of function 'strcasecmp'; did you mean 'strncmp'? [-Wimplicit-function-declaration]
  338 |                 if (!strcasecmp(str, BACKEND_STRS[i])) {
      |                      ^~~~~~~~~~
      |                      strncmp
../src/common.h: In function 'get_time_timespec':
../src/common.h:453:9: warning: implicit declaration of function 'clock_gettime' [-Wimplicit-function-declaration]
  453 |         clock_gettime(CLOCK_MONOTONIC, &tm);
      |         ^~~~~~~~~~~~~
[6/35] Compiling C object src/picom.p/utils.c.o
[7/35] Compiling C object src/picom.p/win.c.o
In file included from ../src/backend/backend.h:9,
                 from ../src/win.c:19:
../src/config.h: In function 'parse_backend':
../src/config.h:338:22: warning: implicit declaration of function 'strcasecmp'; did you mean 'strncmp'? [-Wimplicit-function-declaration]
  338 |                 if (!strcasecmp(str, BACKEND_STRS[i])) {
      |                      ^~~~~~~~~~
      |                      strncmp
In file included from ../src/win.c:21:
../src/common.h: In function 'get_time_timespec':
../src/common.h:453:9: warning: implicit declaration of function 'clock_gettime' [-Wimplicit-function-declaration]
  453 |         clock_gettime(CLOCK_MONOTONIC, &tm);
      |         ^~~~~~~~~~~~~
../src/win.c: In function 'win_update_name':
../src/win.c:663:27: warning: implicit declaration of function 'strdup'; did you mean 'strcmp'? [-Wimplicit-function-declaration]
  663 |                 w->name = strdup(strlst[0]);
      |                           ^~~~~~
      |                           strcmp
../src/win.c:663:25: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  663 |                 w->name = strdup(strlst[0]);
      |                         ^
../src/win.c: In function 'win_update_role':
../src/win.c:686:25: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  686 |                 w->role = strdup(strlst[0]);
      |                         ^
../src/win.c: In function 'win_update_class':
../src/win.c:1839:27: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
 1839 |         w->class_instance = strdup(strlst[0]);
      |                           ^
../src/win.c:1842:34: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
 1842 |                 w->class_general = strdup(strlst[1]);
      |                                  ^
[8/35] Compiling C object src/picom.p/diagnostic.c.o
In file included from ../src/backend/driver.h:10,
                 from ../src/diagnostic.c:8:
../src/config.h: In function 'parse_backend':
../src/config.h:338:22: warning: implicit declaration of function 'strcasecmp'; did you mean 'strncmp'? [-Wimplicit-function-declaration]
  338 |                 if (!strcasecmp(str, BACKEND_STRS[i])) {
      |                      ^~~~~~~~~~
      |                      strncmp
In file included from ../src/diagnostic.c:9:
../src/common.h: In function 'get_time_timespec':
../src/common.h:453:9: warning: implicit declaration of function 'clock_gettime' [-Wimplicit-function-declaration]
  453 |         clock_gettime(CLOCK_MONOTONIC, &tm);
      |         ^~~~~~~~~~~~~
[9/35] Compiling C object src/picom.p/string_utils.c.o
../src/string_utils.c: In function 'mstrextend':
../src/string_utils.c:57:26: warning: implicit declaration of function 'strdup'; did you mean 'strcmp'? [-Wimplicit-function-declaration]
   57 |                 *psrc1 = strdup(src2);
      |                          ^~~~~~
      |                          strcmp
../src/string_utils.c:57:24: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
   57 |                 *psrc1 = strdup(src2);
      |                        ^
[10/35] Compiling C object src/picom.p/kernel.c.o
FAILED: src/picom.p/kernel.c.o 
gcc -Isrc/picom.p -Isrc -I../src -Isubprojects/test.h -I../subprojects/test.h -I/opt/pkg/include/pixman-1 -I/opt/pkg/include -I/opt/pkg/include/libdrm -I/opt/pkg/include/dbus-1.0 -I/opt/pkg/lib/dbus-1.0/include -I/usr/include -I/opt/pkg/include/ev -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=c11 '-DPICOM_VERSION="v11"' -D_GNU_SOURCE -Wcast-function-type -Wignored-qualifiers -Wmissing-parameter-type -Wnonnull -Wshadow -Wno-type-limits -Wold-style-declaration -Woverride-init -Wsign-compare -Wtype-limits -Wuninitialized -Wshift-negative-value -Wunused-but-set-parameter -Wunused-parameter -Wimplicit-fallthrough=2 -Wno-missing-braces -Wconversion -Wempty-body -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -pthread -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -DCONFIG_LIBCONFIG -DCONFIG_REGEX_PCRE -DCONFIG_OPENGL -DCONFIG_DBUS -MD -MQ src/picom.p/kernel.c.o -MF src/picom.p/kernel.c.o.d -o src/picom.p/kernel.c.o -c ../src/kernel.c
../src/kernel.c: In function 'gaussian':
../src/kernel.c:60:61: error: 'M_PI' undeclared (first use in this function)
   60 |         return exp(-0.5 * (x * x + y * y) / (r * r)) / (2 * M_PI * r * r);
      |                                                             ^~~~
../src/kernel.c:60:61: note: each undeclared identifier is reported only once for each function it appears in
../src/kernel.c: In function 'estimate_first_row_sum':
../src/kernel.c:97:65: error: 'M_PI' undeclared (first use in this function)
   97 |         double a = exp(-0.5 * size * size / (r * r)) / sqrt(2 * M_PI) / r;
      |                                                                 ^~~~
../src/kernel.c: In function 'gaussian':
../src/kernel.c:61:1: warning: control reaches end of non-void function [-Wreturn-type]
   61 | }
      | ^
[11/35] Compiling C object src/picom.p/render.c.o
FAILED: src/picom.p/render.c.o 
gcc -Isrc/picom.p -Isrc -I../src -Isubprojects/test.h -I../subprojects/test.h -I/opt/pkg/include/pixman-1 -I/opt/pkg/include -I/opt/pkg/include/libdrm -I/opt/pkg/include/dbus-1.0 -I/opt/pkg/lib/dbus-1.0/include -I/usr/include -I/opt/pkg/include/ev -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=c11 '-DPICOM_VERSION="v11"' -D_GNU_SOURCE -Wcast-function-type -Wignored-qualifiers -Wmissing-parameter-type -Wnonnull -Wshadow -Wno-type-limits -Wold-style-declaration -Woverride-init -Wsign-compare -Wtype-limits -Wuninitialized -Wshift-negative-value -Wunused-but-set-parameter -Wunused-parameter -Wimplicit-fallthrough=2 -Wno-missing-braces -Wconversion -Wempty-body -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -pthread -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -DCONFIG_LIBCONFIG -DCONFIG_REGEX_PCRE -DCONFIG_OPENGL -DCONFIG_DBUS -MD -MQ src/picom.p/render.c.o -MF src/picom.p/render.c.o.d -o src/picom.p/render.c.o -c ../src/render.c
In file included from ../src/backend/backend.h:9,
                 from ../src/common.h:54,
                 from ../src/render.c:12:
../src/config.h: In function 'parse_backend':
../src/config.h:338:22: warning: implicit declaration of function 'strcasecmp'; did you mean 'strncmp'? [-Wimplicit-function-declaration]
  338 |                 if (!strcasecmp(str, BACKEND_STRS[i])) {
      |                      ^~~~~~~~~~
      |                      strncmp
../src/common.h: In function 'get_time_timespec':
../src/common.h:453:9: warning: implicit declaration of function 'clock_gettime' [-Wimplicit-function-declaration]
  453 |         clock_gettime(CLOCK_MONOTONIC, &tm);
      |         ^~~~~~~~~~~~~
../src/render.c: In function 'make_circle':
../src/render.c:189:42: error: 'M_PI' undeclared (first use in this function)
  189 |                 y1 = (int)(-radius * cos(M_PI * k / max_ntraps));
      |                                          ^~~~
../src/render.c:189:42: note: each undeclared identifier is reported only once for each function it appears in
In file included from ../src/utils.h:4,
                 from ../src/backend/gl/glx.h:12,
                 from ../src/common.h:45:
../src/render.c: In function 'render':
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:257:46: note: in expansion of macro 'to_u16_checked'
  257 |                                     .width = to_u16_checked(fullwid),
      |                                              ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:258:47: note: in expansion of macro 'to_u16_checked'
  258 |                                     .height = to_u16_checked(fullhei)};
      |                                               ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:278:37: note: in expansion of macro 'to_u16_checked'
  278 |                                     to_u16_checked(wid), to_u16_checked(hei));
      |                                     ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:278:58: note: in expansion of macro 'to_u16_checked'
  278 |                                     to_u16_checked(wid), to_u16_checked(hei));
      |                                                          ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:293:54: note: in expansion of macro 'to_u16_checked'
  293 |                                             .width = to_u16_checked(wid),
      |                                                      ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:294:55: note: in expansion of macro 'to_u16_checked'
  294 |                                             .height = to_u16_checked(hei)};
      |                                                       ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:302:62: note: in expansion of macro 'to_u16_checked'
  302 |                                                     0, 0, 0, to_u16_checked(wid),
      |                                                              ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:303:53: note: in expansion of macro 'to_u16_checked'
  303 |                                                     to_u16_checked(hei));
      |                                                     ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:309:45: note: in expansion of macro 'to_u16_checked'
  309 |                                             to_u16_checked(wid), to_u16_checked(hei));
      |                                             ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:309:66: note: in expansion of macro 'to_u16_checked'
  309 |                                             to_u16_checked(wid), to_u16_checked(hei));
      |                                                                  ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:319:37: note: in expansion of macro 'to_u16_checked'
  319 |                                     to_u16_checked(wid), to_u16_checked(hei));
      |                                     ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:319:58: note: in expansion of macro 'to_u16_checked'
  319 |                                     to_u16_checked(wid), to_u16_checked(hei));
      |                                                          ^~~~~~~~~~~~~~
../src/render.c: In function 'paint_one':
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:435:30: note: in expansion of macro 'to_u16_checked'
  435 |         const uint16_t wid = to_u16_checked(w->widthb);
      |                              ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:436:30: note: in expansion of macro 'to_u16_checked'
  436 |         const uint16_t hei = to_u16_checked(w->heightb);
      |                              ^~~~~~~~~~~~~~
../src/render.c: In function 'win_paint_shadow':
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:786:64: note: in expansion of macro 'to_u16_checked'
  786 |                                                       .width = to_u16_checked(w->widthb),
      |                                                                ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:787:65: note: in expansion of macro 'to_u16_checked'
  787 |                                                       .height = to_u16_checked(w->heightb)};
      |                                                                 ^~~~~~~~~~~~~~
../src/render.c: In function 'win_blur_background':
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:897:26: note: in expansion of macro 'to_u16_checked'
  897 |         auto const wid = to_u16_checked(w->widthb);
      |                          ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:898:26: note: in expansion of macro 'to_u16_checked'
  898 |         auto const hei = to_u16_checked(w->heightb);
      |                          ^~~~~~~~~~~~~~
../src/render.c: In function 'paint_all':
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:1183:50: note: in expansion of macro 'to_u16_checked'
 1183 |                                 auto const wid = to_u16_checked(w->widthb);
      |                                                  ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:1184:50: note: in expansion of macro 'to_u16_checked'
 1184 |                                 auto const hei = to_u16_checked(w->heightb);
      |                                                  ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:1204:50: note: in expansion of macro 'to_u16_checked'
 1204 |                                 auto const wid = to_u16_checked(w->widthb);
      |                                                  ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:1205:50: note: in expansion of macro 'to_u16_checked'
 1205 |                                 auto const hei = to_u16_checked(w->heightb);
      |                                                  ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:1249:23: note: in expansion of macro 'to_u16_checked'
 1249 |         auto rwidth = to_u16_checked(ps->root_width);
      |                       ^~~~~~~~~~~~~~
../src/utils.h:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   65 |                 assert(__tmp <= upper);                                                  \
      |                              ^~
../src/utils.h:101:17: note: in expansion of macro 'ASSERT_IN_RANGE'
  101 |                 ASSERT_IN_RANGE(__to_tmp, 0, UINT16_MAX);                                \
      |                 ^~~~~~~~~~~~~~~
../src/render.c:1250:24: note: in expansion of macro 'to_u16_checked'
 1250 |         auto rheight = to_u16_checked(ps->root_height);
      |                        ^~~~~~~~~~~~~~
[12/35] Compiling C object src/picom.p/log.c.o
In file included from ../src/backend/backend.h:9,
                 from ../src/backend/gl/gl_common.h:8,
                 from ../src/log.c:13:
../src/config.h: In function 'parse_backend':
../src/config.h:338:22: warning: implicit declaration of function 'strcasecmp'; did you mean 'strncmp'? [-Wimplicit-function-declaration]
  338 |                 if (!strcasecmp(str, BACKEND_STRS[i])) {
      |                      ^~~~~~~~~~
      |                      strncmp
../src/log.c: In function 'log_printf':
../src/log.c:163:20: warning: implicit declaration of function 'vasprintf'; did you mean 'vsprintf'? [-Wimplicit-function-declaration]
  163 |         int blen = vasprintf(&buf, fmt, args);
      |                    ^~~~~~~~~
      |                    vsprintf
../src/log.c:179:20: warning: implicit declaration of function 'asprintf'; did you mean 'vsprintf'? [-Wimplicit-function-declaration]
  179 |         int tlen = asprintf(&time, "%s.%03ld", time_buf, ts.tv_nsec / 1000000);
      |                    ^~~~~~~~
      |                    vsprintf
../src/log.c: In function 'file_logger_writev':
../src/log.c:267:40: warning: implicit declaration of function 'fileno' [-Wimplicit-function-declaration]
  267 |         ssize_t _ attr_unused = writev(fileno(f->f), vec, vcnt);
      |                                        ^~~~~~
../src/log.c: In function 'stderr_logger_new':
../src/log.c:323:19: warning: implicit declaration of function 'fdopen'; did you mean 'fopen'? [-Wimplicit-function-declaration]
  323 |         FILE *f = fdopen(fd, "w");
      |                   ^~~~~~
      |                   fopen
../src/log.c:323:19: warning: initialization of 'FILE *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
[13/35] Compiling C object src/picom.p/options.c.o
In file included from ../src/backend/backend.h:9,
                 from ../src/options.c:15:
../src/config.h: In function 'parse_backend':
../src/config.h:338:22: warning: implicit declaration of function 'strcasecmp'; did you mean 'strncmp'? [-Wimplicit-function-declaration]
  338 |                 if (!strcasecmp(str, BACKEND_STRS[i])) {
      |                      ^~~~~~~~~~
      |                      strncmp
In file included from ../src/options.c:16:
../src/common.h: In function 'get_time_timespec':
../src/common.h:453:9: warning: implicit declaration of function 'clock_gettime' [-Wimplicit-function-declaration]
  453 |         clock_gettime(CLOCK_MONOTONIC, &tm);
      |         ^~~~~~~~~~~~~
../src/options.c: In function 'usage':
../src/options.c:264:19: warning: implicit declaration of function 'fileno' [-Wimplicit-function-declaration]
  264 |         if (ioctl(fileno(f), TIOCGWINSZ, &window_size) != -1) {
      |                   ^~~~~~
../src/options.c: In function 'get_early_config':
../src/options.c:328:40: warning: implicit declaration of function 'strdup'; did you mean 'strcmp'? [-Wimplicit-function-declaration]
  328 |                         *config_file = strdup(optarg);
      |                                        ^~~~~~
      |                                        strcmp
../src/options.c:328:38: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  328 |                         *config_file = strdup(optarg);
      |                                      ^
../src/options.c: In function 'get_cfg':
../src/options.c:367:32: warning: initialization of 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  367 |         char *lc_numeric_old = strdup(setlocale(LC_NUMERIC, NULL));
      |                                ^~~~~~
../src/options.c:551:38: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  551 |                         opt->logpath = strdup(optarg);
      |                                      ^
../src/options.c:633:53: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  633 |                         opt->shadow_exclude_reg_str = strdup(optarg);
      |                                                     ^
../src/options.c:649:45: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  649 |                         opt->write_pid_path = strdup(optarg);
      |                                             ^
../src/options.c:659:50: warning: assignment to 'char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  659 |                         opt->glx_fshader_win_str = strdup(optarg);
      |                                                  ^
ninja: build stopped: subcommand failed.
*** Error code 1

Stop.
bmake[1]: stopped making "all" in /data/jenkins/workspace/pkgsrc-upstream-trunk/x11/picom
*** Error code 1

Stop.
bmake: stopped making "all" in /data/jenkins/workspace/pkgsrc-upstream-trunk/x11/picom