From 5290a2aed014f7ddcf19df7948e4f336e93c2681 Mon Sep 17 00:00:00 2001 From: Abtin Keshavarzian Date: Mon, 4 Apr 2022 22:11:53 -0700 Subject: [PATCH] [message] static assert `Meatdata::mPriority` is of proper bit size (#7563) --- src/core/common/message.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/core/common/message.cpp b/src/core/common/message.cpp index 409a0d33e..d3681f20b 100644 --- a/src/core/common/message.cpp +++ b/src/core/common/message.cpp @@ -346,6 +346,8 @@ Error Message::SetPriority(Priority aPriority) uint8_t priority = static_cast(aPriority); PriorityQueue *priorityQueue; + static_assert(kNumPriorities <= 4, "`Metadata::mPriority` as a 2-bit field cannot fit all `Priority` values"); + VerifyOrExit(priority < kNumPriorities, error = kErrorInvalidArgs); VerifyOrExit(IsInAQueue(), GetMetadata().mPriority = priority);