[Lldb-commits] [clang] [lldb] [Clang] Introduce OverflowBehaviorType for fine-grained overflow control (PR #148914)

Oliver Hunt via lldb-commits lldb-commits at lists.llvm.org
Wed Sep 24 12:10:43 PDT 2025


================
@@ -9744,6 +9744,16 @@ static void DiagnoseNarrowingInInitList(Sema &S,
 
   case NK_Constant_Narrowing: {
     // A constant value was narrowed.
+
+    // Overflow behavior destination types with a 'wrap' kind can elide
----------------
ojhunt wrote:

No, you are misunderstanding the point of this diagnostic.

The error is not the wrapping behavior, it is the author getting the underlying type wrong.

e.g. the author wrote `uint32_t` when they meant to write `unint64_t`. The fact that they want the type to have defined wrapping semantics is irrelevant to that diagnosis.

> But yes, it is possible to write bad code, even when using OBTs.

Correct, and the literally entire point of this warning is to prevent this *exact* error.

https://github.com/llvm/llvm-project/pull/148914


More information about the lldb-commits mailing list