From 860d819e33789891fcf9665774aa00ea9bf4bfd8 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Fri, 2 Oct 2026 20:55:16 -0500 Subject: [PATCH] Guard the NumberRange field types read from flash --- esphome/components/number/number_traits.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/esphome/components/number/number_traits.h b/esphome/components/number/number_traits.h index 3b81ddf2968..6fd8fe560c5 100644 --- a/esphome/components/number/number_traits.h +++ b/esphome/components/number/number_traits.h @@ -2,6 +2,7 @@ #include #include +#include namespace esphome::number { @@ -17,6 +18,11 @@ struct NumberRange { float max_value; float step; }; +// Read straight from flash on ESP8266, so every field must stay a word. +static_assert(std::is_same_v && + std::is_same_v && + std::is_same_v, + "NumberRange fields must stay float"); class NumberTraits { public: