File 1382-erts-Suppress-false-array-out-of-bounds-warnings.patch of Package erlang
From 57bf81170116de7eefe3478f0bf04ae306b5f71b Mon Sep 17 00:00:00 2001
From: Sverker Eriksson <sverker@erlang.org>
Date: Tue, 27 Jan 2026 18:35:01 +0100
Subject: [PATCH 2/6] erts: Suppress false array out of bounds warnings
---
erts/emulator/beam/erl_proc_sig_queue.c | 8 ++++----
erts/emulator/beam/erl_term.h | 2 +-
erts/emulator/beam/erl_trace.c | 3 ++-
3 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/erts/emulator/beam/erl_term.h b/erts/emulator/beam/erl_term.h
index 13ab10c6a5..beb44c0818 100644
--- a/erts/emulator/beam/erl_term.h
+++ b/erts/emulator/beam/erl_term.h
@@ -1127,7 +1127,7 @@ typedef struct external_thing_ {
Uint32 high;
#endif
} port;
- Uint32 ui32[1];
+ Uint32 ui32[2];
Uint ui[1];
} data;
} ExternalThing;
diff --git a/erts/emulator/beam/erl_trace.c b/erts/emulator/beam/erl_trace.c
index b4b9c6a0ce..c242eb3574 100644
--- a/erts/emulator/beam/erl_trace.c
+++ b/erts/emulator/beam/erl_trace.c
@@ -3535,7 +3535,8 @@ erts_tracer_update_impl(ErtsTracer *tracer, ErtsTracer new_tracer)
hp = hf->mem + 2;
hf->used_size -= (sizeof(ErtsThrPrgrLaterOp)+sizeof(Eterm)-1)/sizeof(Eterm) + 1;
*tracer = copy_struct(tracer_state, sz, &hp, &hf->off_heap);
- *tracer = CONS(hf->mem, tracer_module, *tracer);
+ hp = hf->mem;
+ *tracer = CONS(hp, tracer_module, *tracer);
ASSERT((void*)(((char*)(ptr_val(*tracer)) - offsetof(ErlHeapFragment, mem))) == hf);
}
}
--
2.51.0