Skip to contentSkip to conversation

core: examples: fix warning for u64 formatting on 32bit

PATCH Applied Kent Gibson 2 participants 2 messages Jun 30, 2023 GPIO

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 core: examples: fix warning for u64 formatting on 32bit

The watch_line_info example prints the u64 timestamps using "%ld" which produces a warning for 32bit. Replace it with PRIu64.

---
 examples/watch_line_info.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
examples/watch_line_info.c +2 -1
index 1879a62..9df3121 100644
@@ -5,6 +5,7 @@
 
 #include <errno.h>
 #include <gpiod.h>
+#include <inttypes.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -63,7 +64,7 @@ int main(void)
 
 		info = gpiod_info_event_get_line_info(event);
 		timestamp_ns = gpiod_info_event_get_timestamp_ns(event);
-		printf("line %3d: %-9s %ld.%ld\n",
+		printf("line %3d: %-9s %" PRIu64 ".%" PRIu64 "\n",
 		       gpiod_line_info_get_offset(info), event_type(event),
 		       timestamp_ns / 1000000000, timestamp_ns % 1000000000);
 
Signature · 1 line
2.41.0
#1 lore raw
Quoted 31 lines · Kent Gibson

The watch_line_info example prints the u64 timestamps using "%ld" which produces a warning for 32bit. Replace it with PRIu64.

---
 examples/watch_line_info.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
examples/watch_line_info.c +2 -2
index 1879a62..9df3121 100644
@@ -5,6 +5,7 @@
 
 #include <errno.h>
 #include <gpiod.h>
+#include <inttypes.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -63,7 +64,7 @@ int main(void)
 
                info = gpiod_info_event_get_line_info(event);
                timestamp_ns = gpiod_info_event_get_timestamp_ns(event);
-               printf("line %3d: %-9s %ld.%ld\n",
+               printf("line %3d: %-9s %" PRIu64 ".%" PRIu64 "\n",
                       gpiod_line_info_get_offset(info), event_type(event),
                       timestamp_ns / 1000000000, timestamp_ns % 1000000000);
 
--
Quoted 2 lines

2.41.0

Applied, thanks!

Bart