git: 1aea303cc2e8 - stable/14 - Merge commit 1f332ae4f1b3 from llvm-project (by Alexander Kornienko):
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 20 Sep 2026 07:03:44 UTC
The branch stable/14 has been updated by dim:
URL: https://cgit.FreeBSD.org/src/commit/?id=1aea303cc2e8f65acba3928b7fcc2196ca82d4c0
commit 1aea303cc2e8f65acba3928b7fcc2196ca82d4c0
Author: Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2026-09-17 19:32:45 +0000
Commit: Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2026-09-20 07:03:05 +0000
Merge commit 1f332ae4f1b3 from llvm-project (by Alexander Kornienko):
Fix -Wformat diagnostic after #190965 (#193704)
Fixes libunwind compiler diagnostic when building with clang after
034d4dcad6396d1241e8262e69871b8d61da7e4f:
```
In file included from libunwind/src/libunwind.cpp:31:
In file included from libunwind/src/UnwindCursor.hpp:52:
libunwind/src/CompactUnwinder.hpp:339:46: error: format specifies type 'unsigned long long' but the argument has type 'uint64_t' (aka 'unsigned long') [-Werror,-Wformat]
338 | "function starting at 0x%llX",
| ~~~~
| %lX
339 | compactEncoding, functionStart);
| ^~~~~~~~~~~~~
libunwind/src/config.h:215:63: note: expanded from macro '_LIBUNWIND_DEBUG_LOG'
215 | #define _LIBUNWIND_DEBUG_LOG(msg, ...) _LIBUNWIND_LOG(msg, __VA_ARGS__)
| ~~~ ^~~~~~~~~~~
libunwind/src/config.h:181:45: note: expanded from macro '_LIBUNWIND_LOG'
181 | fprintf(stderr, "libunwind: " msg "\n", __VA_ARGS__); \
| ~~~ ^~~~~~~~~~~
In file included from libunwind/src/libunwind.cpp:31:
In file included from libunwind/src/UnwindCursor.hpp:52:
libunwind/src/CompactUnwinder.hpp:458:39: error: format specifies type 'unsigned long long' but the argument has type 'uint64_t' (aka 'unsigned long') [-Werror,-Wformat]
457 | "function starting at 0x%llX",
| ~~~~
| %lX
458 | encoding, functionStart);
| ^~~~~~~~~~~~~
libunwind/src/config.h:215:63: note: expanded from macro '_LIBUNWIND_DEBUG_LOG'
215 | #define _LIBUNWIND_DEBUG_LOG(msg, ...) _LIBUNWIND_LOG(msg, __VA_ARGS__)
| ~~~ ^~~~~~~~~~~
libunwind/src/config.h:181:45: note: expanded from macro '_LIBUNWIND_LOG'
181 | fprintf(stderr, "libunwind: " msg "\n", __VA_ARGS__); \
| ~~~ ^~~~~~~~~~~
```
This avoids a -Werror failure with clang >= 23.
MFC after: 3 days
(cherry picked from commit 8a8c14464dd372495c9bf4b87c9b88d73f78d587)
---
contrib/llvm-project/libunwind/src/CompactUnwinder.hpp | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/contrib/llvm-project/libunwind/src/CompactUnwinder.hpp b/contrib/llvm-project/libunwind/src/CompactUnwinder.hpp
index a7a8a153d86a..490f61496998 100644
--- a/contrib/llvm-project/libunwind/src/CompactUnwinder.hpp
+++ b/contrib/llvm-project/libunwind/src/CompactUnwinder.hpp
@@ -12,6 +12,7 @@
#ifndef __COMPACT_UNWINDER_HPP__
#define __COMPACT_UNWINDER_HPP__
+#include <inttypes.h>
#include <stdint.h>
#include <stdlib.h>
@@ -335,8 +336,8 @@ int CompactUnwinder_x86_64<A>::stepWithCompactEncodingRBPFrame(
default:
(void)functionStart;
_LIBUNWIND_DEBUG_LOG("bad register for RBP frame, encoding=%08X for "
- "function starting at 0x%llX",
- compactEncoding, functionStart);
+ "function starting at 0x%" PRIu64 "X",
+ compactEncoding, functionStart);
_LIBUNWIND_ABORT("invalid compact unwind encoding");
}
savedRegisters += 8;
@@ -454,8 +455,8 @@ int CompactUnwinder_x86_64<A>::stepWithCompactEncodingFrameless(
break;
default:
_LIBUNWIND_DEBUG_LOG("bad register for frameless, encoding=%08X for "
- "function starting at 0x%llX",
- encoding, functionStart);
+ "function starting at 0x%" PRIu64 "X",
+ encoding, functionStart);
_LIBUNWIND_ABORT("invalid compact unwind encoding");
}
savedRegisters += 8;