Skip to content

Conversation

@xypron
Copy link

@xypron xypron commented Aug 9, 2024

For printing uintptr_t use %zd.

benchmarks/common/syscalls.c: In function ‘_init’:
benchmarks/common/syscalls.c:118:36: warning: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘uintptr_t’ {aka ‘long unsigned int’} [-Wformat=]
  118 |       pbuf += sprintf(pbuf, "%s = %d\n", counter_names[i], counters[i]);
      |                                   ~^                       ~~~~~~~~~~~
      |                                    |                               |
      |                                    int                             uintptr_t {aka long unsigned int}
      |                                   %ld

For printing uintptr_t use %zd.

    benchmarks/common/syscalls.c: In function ‘_init’:
    benchmarks/common/syscalls.c:118:36: warning: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘uintptr_t’ {aka ‘long unsigned int’} [-Wformat=]
      118 |       pbuf += sprintf(pbuf, "%s = %d\n", counter_names[i], counters[i]);
          |                                   ~^                       ~~~~~~~~~~~
          |                                    |                               |
          |                                    int                             uintptr_t {aka long unsigned int}
          |                                   %ld

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
@aswaterman
Copy link
Collaborator

z is for size_t. Don't you want something like "%s = %" PRIdPTR "\n"?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants