Skip to content

[Problem]: Log statement data type warnings, dev branch #2125

@ejurgensen

Description

@ejurgensen

What happened?

See warnings below

Relevant log output

In file included from rtsp.c:72:
rtsp.c: In function ‘read_from_rtsp_connection’:
rtsp.c:1011:16: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 7 has type ‘size_t’ {aka ‘unsigned int’} [-Wformat=]
 1011 |       debug(3, "read_from_rtsp_connection error %d \"%s\" attempting to read up to %lu bytes.",
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1012 |             errno, errorstring, count);
      |                                 ~~~~~
      |                                 |
      |                                 size_t {aka unsigned int}
common.h:488:47: note: in definition of macro ‘debug’
  488 | #define debug(...) _debug(__FILE__, __LINE__, __VA_ARGS__)
      |                                               ^~~~~~~~~~~
rtsp.c:1011:86: note: format string is defined here
 1011 |       debug(3, "read_from_rtsp_connection error %d \"%s\" attempting to read up to %lu bytes.",
      |                                                                                    ~~^
      |                                                                                      |
      |                                                                                      long unsigned int
      |                                                                                    %u
rtsp.c: In function ‘msg_write_response’:
rtsp.c:1336:14: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘int’ [-Wformat=]
 1336 |     debug(1, "msg_write_response error -- requested bytes: %ld not fully written: %ld.", p - pkt,
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  ~~~~~~~
      |                                                                                            |
      |                                                                                            int
common.h:488:47: note: in definition of macro ‘debug’
  488 | #define debug(...) _debug(__FILE__, __LINE__, __VA_ARGS__)
      |                                               ^~~~~~~~~~~
rtsp.c:1336:62: note: format string is defined here
 1336 |     debug(1, "msg_write_response error -- requested bytes: %ld not fully written: %ld.", p - pkt,
      |                                                            ~~^
      |                                                              |
      |                                                              long int
      |                                                            %d
rtsp.c:1336:14: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 6 has type ‘ssize_t’ {aka ‘int’} [-Wformat=]
 1336 |     debug(1, "msg_write_response error -- requested bytes: %ld not fully written: %ld.", p - pkt,
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1337 |           reply);
      |           ~~~~~
      |           |
      |           ssize_t {aka int}
common.h:488:47: note: in definition of macro ‘debug’
  488 | #define debug(...) _debug(__FILE__, __LINE__, __VA_ARGS__)
      |                                               ^~~~~~~~~~~
rtsp.c:1336:85: note: format string is defined here
 1336 |     debug(1, "msg_write_response error -- requested bytes: %ld not fully written: %ld.", p - pkt,
      |                                                                                   ~~^
      |                                                                                     |
      |                                                                                     long int
      |                                                                                   %d
rtsp.c: In function ‘rtsp_conversation_thread_func’:
rtsp.c:5197:20: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘size_t’ {aka ‘unsigned int’} [-Wformat=]
 5197 |           debug(1, "rtsp_read_request_response_bad_packet write %ld bytes requested but %d written.",
      |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 5198 |                 strlen(response_text), reply);
      |                 ~~~~~~~~~~~~~~~~~~~~~
      |                 |
      |                 size_t {aka unsigned int}
common.h:488:47: note: in definition of macro ‘debug’
  488 | #define debug(...) _debug(__FILE__, __LINE__, __VA_ARGS__)
      |                                               ^~~~~~~~~~~
rtsp.c:5197:67: note: format string is defined here
 5197 |           debug(1, "rtsp_read_request_response_bad_packet write %ld bytes requested but %d written.",
      |                                                                 ~~^
      |                                                                   |
      |                                                                   long int
      |                                                                 %d
In file included from common.c:29:
common.c: In function ‘rsa_apply’:
common.c:849:26: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 5 has type ‘size_t’ {aka ‘unsigned int’} [-Wformat=]
  849 |                 debug(3, "success with output length of %lu.", ol);
      |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  ~~
      |                                                                |
      |                                                                size_t {aka unsigned int}
common.h:488:47: note: in definition of macro ‘debug’
  488 | #define debug(...) _debug(__FILE__, __LINE__, __VA_ARGS__)
      |                                               ^~~~~~~~~~~
common.c:849:59: note: format string is defined here
  849 |                 debug(3, "success with output length of %lu.", ol);
      |                                                         ~~^
      |                                                           |
      |                                                           long unsigned int
      |                                                         %u
In file included from rtp.c:29:
rtp.c: In function ‘rtp_audio_receiver’:
rtp.c:303:18: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 6 has type ‘ssize_t’ {aka ‘int’} [-Wformat=]
  303 |         debug(1, "Audio receiver -- Unknown RTP packet of type 0x%02X length %ld seqno %d", type,
      |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  304 |               nread, seqno);
      |               ~~~~~
      |               |
      |               ssize_t {aka int}
common.h:488:47: note: in definition of macro ‘debug’
  488 | #define debug(...) _debug(__FILE__, __LINE__, __VA_ARGS__)
      |                                               ^~~~~~~~~~~
rtp.c:303:80: note: format string is defined here
  303 |         debug(1, "Audio receiver -- Unknown RTP packet of type 0x%02X length %ld seqno %d", type,
      |                                                                              ~~^
      |                                                                                |
      |                                                                                long int
      |                                                                              %d
rtp.c:306:12: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘ssize_t’ {aka ‘int’} [-Wformat=]
  306 |       warn("Audio receiver -- Unknown RTP packet of type 0x%02X length %ld.", type, nread);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~        ~~~~~
      |                                                                                     |
      |                                                                                     ssize_t {aka int}
common.h:489:45: note: in definition of macro ‘warn’
  489 | #define warn(...) _warn(__FILE__, __LINE__, __VA_ARGS__)
      |                                             ^~~~~~~~~~~
rtp.c:306:74: note: format string is defined here
  306 |       warn("Audio receiver -- Unknown RTP packet of type 0x%02X length %ld.", type, nread);
      |                                                                        ~~^
      |                                                                          |
      |                                                                          long int
      |                                                                        %d
rtp.c: In function ‘rtp_control_receiver’:
rtp.c:576:20: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 6 has type ‘ssize_t’ {aka ‘int’} [-Wformat=]
  576 |           debug(1, "Control Receiver -- Unknown RTP packet of type 0x%02X length %ld, ignored.",
      |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  577 |                 packet[1], nread);
      |                            ~~~~~
      |                            |
      |                            ssize_t {aka int}
common.h:488:47: note: in definition of macro ‘debug’
  488 | #define debug(...) _debug(__FILE__, __LINE__, __VA_ARGS__)
      |                                               ^~~~~~~~~~~
rtp.c:576:84: note: format string is defined here
  576 |           debug(1, "Control Receiver -- Unknown RTP packet of type 0x%02X length %ld, ignored.",
      |                                                                                  ~~^
      |                                                                                    |
      |                                                                                    long int
      |                                                                                  %d
rtp.c: In function ‘rtp_timing_receiver’:
rtp.c:984:20: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 6 has type ‘ssize_t’ {aka ‘int’} [-Wformat=]
  984 |           debug(1, "Timing port -- Unknown RTP packet of type 0x%02X length %ld.", packet[1], nread);
      |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~             ~~~~~
      |                                                                                               |
      |                                                                                               ssize_t {aka int}
common.h:488:47: note: in definition of macro ‘debug’
  488 | #define debug(...) _debug(__FILE__, __LINE__, __VA_ARGS__)
      |                                               ^~~~~~~~~~~
rtp.c:984:79: note: format string is defined here
  984 |           debug(1, "Timing port -- Unknown RTP packet of type 0x%02X length %ld.", packet[1], nread);
      |                                                                             ~~^
      |                                                                               |
      |                                                                               long int
      |                                                                             %d
In file included from player.c:83:
player.c: In function ‘buffer_get_frame’:
player.c:2128:33: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 8 has type ‘uint32_t’ {aka ‘unsigned int’} [-Wformat=]
 2128 |                                 "flush to %u request: flush buffer %u, from "
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
......
 2131 |                                 current_packet->timestamp + current_packet->length - 1,
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                                                                    |
      |                                                                                    uint32_t {aka unsigned int}
common.h:488:47: note: in definition of macro ‘debug’
  488 | #define debug(...) _debug(__FILE__, __LINE__, __VA_ARGS__)
      |                                               ^~~~~~~~~~~
player.c: In function ‘stuff_buffer_soxr_32’:
player.c:3146:13: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 4 has type ‘size_t’ {aka ‘unsigned int’} [-Wformat=]
 3146 |         die("odone = %lu!\n", odone);
      |             ^~~~~~~~~~~~~~~~  ~~~~~
      |                               |
      |                               size_t {aka unsigned int}
common.h:487:43: note: in definition of macro ‘die’
  487 | #define die(...) _die(__FILE__, __LINE__, __VA_ARGS__)
      |                                           ^~~~~~~~~~~
player.c:3146:24: note: format string is defined here
 3146 |         die("odone = %lu!\n", odone);
      |                      ~~^
      |                        |
      |                        long unsigned int
      |                      %u
player.c: In function ‘player_thread_func’:
player.c:4040:28: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 5 has type ‘size_t’ {aka ‘unsigned int’} [-Wformat=]
 4040 |                   debug(3, "tsum_of_frames: %lu.", tsum_of_frames);
      |                            ^~~~~~~~~~~~~~~~~~~~~~  ~~~~~~~~~~~~~~
      |                                                    |
      |                                                    size_t {aka unsigned int}
common.h:488:47: note: in definition of macro ‘debug’
  488 | #define debug(...) _debug(__FILE__, __LINE__, __VA_ARGS__)
      |                                               ^~~~~~~~~~~
player.c:4040:47: note: format string is defined here
 4040 |                   debug(3, "tsum_of_frames: %lu.", tsum_of_frames);
      |                                             ~~^
      |                                               |
      |                                               long unsigned int
      |                                             %u
In file included from audio_alsa.c:42:
audio_alsa.c: In function ‘alsa_buffer_monitor_thread_code’:
audio_alsa.c:2383:20: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 7 has type ‘size_t’ {aka ‘unsigned int’} [-Wformat=]
 2383 |           debug(3, "Played %u frames of silence on %u channels, equal to %lu bytes.",
      |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 2384 |                 frames_of_silence, CHANNELS_FROM_ENCODED_FORMAT(current_encoded_output_format),
 2385 |                 size_of_silence_buffer);
      |                 ~~~~~~~~~~~~~~~~~~~~~~
      |                 |
      |                 size_t {aka unsigned int}
common.h:488:47: note: in definition of macro ‘debug’
  488 | #define debug(...) _debug(__FILE__, __LINE__, __VA_ARGS__)
      |                                               ^~~~~~~~~~~
audio_alsa.c:2383:76: note: format string is defined here
 2383 |           debug(3, "Played %u frames of silence on %u channels, equal to %lu bytes.",
      |                                                                          ~~^
      |                                                                            |
      |                                                                            long unsigned int
      |                                                                          %u

System Information.

pi@bookworm:~/build/github/shairport-sync $ ./shairport-sync --displayConfig
         0.000834064 "shairport.c:2484" >> Display Config Start.
         0.006180158 "shairport.c:2484"
         0.000171994 "shairport.c:2484" From "uname -a":
         0.000070850 "shairport.c:2484"  Linux bookworm 6.12.47+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.12.47-1+rpt1~bookworm (2025-09-16) aarch64 GNU/Linux
         0.011756837 "shairport.c:2484"
         0.000197345 "shairport.c:2484" From /etc/os-release:
         0.000071942 "shairport.c:2484"  Raspbian GNU/Linux 12 (bookworm)
         0.008229773 "shairport.c:2484"
         0.000540223 "shairport.c:2484" From /sys/firmware/devicetree/base/model:
         0.000091737 "shairport.c:2484"  Raspberry Pi 4 Model B Rev 1.4
         0.000152680 "shairport.c:2484"
         0.000070850 "shairport.c:2484" Shairport Sync Version String:
         0.000061572 "shairport.c:2484"  5.0-dev-150-gd7f88166-OpenSSL-Avahi-ALSA-soxr-sysconfdir:/usr/local/etc
         0.000067886 "shairport.c:2484"
         0.000058183 "shairport.c:2484" Command Line:
         0.000379302 "shairport.c:2484"  ./shairport-sync --displayConfig
         0.000075609 "shairport.c:2484" No configuration file.
         0.000062664 "shairport.c:2484"
         0.000057683 "shairport.c:2484" >> Display Config End.
         0.000058980 "shairport.c:2486" >> Goodbye!
         0.000082238 "shairport.c:1996" normal exit

Configuration Information.

See system info

PulseAudio or PipeWire installed?

  • Check if your system uses a Sound Server.

How did you install Shairport Sync?

Built from source

Check previous issues

  • Confirm

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions