test: the example's size stops being a number nobody holds
Every other port in the fleet states its image size and is held to it; this one stated none, so a library advance could move `clock` and no check would say a word - which is exactly what the size claim was built after. The two numbers are what the presets build today, byte-identical across generated and reflect, and the README now says both. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -26,7 +26,9 @@ cmake --build --preset attiny85-generated
|
|||||||
|
|
||||||
Presets cover attiny85/atmega328p in both libavr modes (generated and
|
Presets cover attiny85/atmega328p in both libavr modes (generated and
|
||||||
reflect); `ctest` runs the consteval battery over the BCD, the hours
|
reflect); `ctest` runs the consteval battery over the BCD, the hours
|
||||||
register's two formats, the weekday and the alarm rate encodings. The legacy
|
register's two formats, the weekday and the alarm rate encodings, and holds
|
||||||
|
the example to its stated size — **1480 B** on the mega328P and **1238 B**
|
||||||
|
on the tiny85, byte-identical across the two modes. The legacy
|
||||||
yazoalfa-based driver lives on the `master` branch.
|
yazoalfa-based driver lives on the `master` branch.
|
||||||
|
|
||||||
The weekday register is derived from the date by default. A program that
|
The weekday register is derived from the date by default. A program that
|
||||||
|
|||||||
@@ -1,5 +1,13 @@
|
|||||||
libavr_format_test()
|
libavr_format_test()
|
||||||
|
|
||||||
|
# The example's size is stated in the README, per chip, and a library advance
|
||||||
|
# that moves it silently is what this catches.
|
||||||
|
if(LIBAVR_MCU STREQUAL "atmega328p")
|
||||||
|
libavr_size_claim_test(clock 1480)
|
||||||
|
elseif(LIBAVR_MCU STREQUAL "attiny85")
|
||||||
|
libavr_size_claim_test(clock 1238)
|
||||||
|
endif()
|
||||||
|
|
||||||
# The battery is a compile: a static_assert that fails is the failure. It is a
|
# The battery is a compile: a static_assert that fails is the failure. It is a
|
||||||
# target rather than only a ctest so a plain build catches a regression too.
|
# target rather than only a ctest so a plain build catches a regression too.
|
||||||
add_library(consteval_tests OBJECT consteval.cpp)
|
add_library(consteval_tests OBJECT consteval.cpp)
|
||||||
|
|||||||
Reference in New Issue
Block a user