[Build] [Silabs] ElectricalSensorManager.cpp:202:26: error: comparison is always false due to limited range of data type [-Werror=type-limits]
Build issue(s)
I am facing a build issue with dishwasher-app/silabs app because of this comparison:
ElectricalSensorManager.cpp:202:26: error: comparison is always false due to limited range of data type [-Werror=type-limits]
202 | if ((updateState < 0) || (updateState > ERROR_STATE_INDEX))
| ~~~~~~~~~~~~^~~
Here: https://github.com/project-chip/connectedhomeip/blob/d2d06b3865f91570311c199611b31f4c64b8a964/examples/dishwasher-app/silabs/src/ElectricalSensorManager.cpp#L202
Steps to reproduce
cd connectedhomeip
./scripts/examples/gn_silabs_example.sh ./examples/dishwasher-app/silabs/ ./out/dishwasher-app BRD2703A
Error
-fmacro-prefix-map=../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/= -std=gnu++17 -fno-rtti -Wnon-virtual-dtor -DEFR32MG24 -DENABLE_WSTK_LEDS -DMBEDTLS_CONFIG_FILE=\"efr32-chip-mbedtls-config.h\" -DMBEDTLS_PSA_CRYPTO_CONFIG_FILE=\"efr32-psa-crypto-config.h\" -D__STARTUP_CLEAR_BSS -DHARD_FAULT_LOG_ENABLE -DCORTEXM3_EFM32_MICRO -DNVM3_DEFAULT_CACHE_SIZE=200 -DNVM3_DEFAULT_NVM_SIZE=40960 -DNVM3_DEFAULT_MAX_OBJECT_SIZE=4092 -DKVS_MAX_ENTRIES=255 -DCORTEXM3=1 -DMICRO=EMBER_MICRO_CORTEXM3_EFR32 -DPLAT=EMBER_PLATFORM_CORTEXM3 -DEFR32MG24B020F1536IM48=1 -DBRD2703A=1 -DSL_BOARD_NAME=BRD2703A -D__HEAP_SIZE=0 -D__STACK_SIZE=0 -DSL_THREADING_ALT=1 -DSL_COMPONENT_CATALOG_PRESENT=1 -DSL_CODE_COMPONENT_CORE=core -DSL_CODE_COMPONENT_PERIPHERAL_SYSRTC=hal_sysrtc -DSL_CODE_COMPONENT_POWER_MANAGER=power_manager -DSL_CODE_COMPONENT_SLEEPTIMER=sleeptimer -DCMSIS_NVIC_VIRTUAL=1 -DCMSIS_NVIC_VIRTUAL_HEADER_FILE=\"cmsis_nvic_virtual.h\" -DPLATFORM_HEADER=\"platform-header.h\" -DUSE_NVM3=1 -DSL_RAIL_LIB_MULTIPROTOCOL_SUPPORT=1 -DSL_RAIL_UTIL_PA_CONFIG_HEADER=\<sl_rail_util_pa_config.h\> -DRADIO_CONFIG_DMP_SUPPORT=1 -DSL_MATTER_BLE_EXTENDED_ADV=false -DSL_MATTER_GN_BUILD=1 -DSL_MEMORY_POOL_LIGHT=1 -DSL_OPENTHREAD_STACK_FEATURES_CONFIG_FILE=\"sl_openthread_features_config.h\" -DSL_CSL_TIMEOUT=30 -DCIRCULAR_QUEUE_USE_LOCAL_CONFIG_HEADER=1 -DSILABS_LOG_ENABLED=1 -DSL_CONFIG_OPENTHREAD_LIB=0 -DSL_USE_COAP_CONFIG=0 -DSL_MATTER_PROVISION_FLASH=0 -DSL_OT_ENABLE=1 -DSL_OPENTHREAD_RTOS_STACK_TASK_PRIORITY=24 -DSL_OPENTHREAD_RTOS_APP_TASK_PRIORITY=23 -DSL_OPENTHREAD_RTOS_CLI_TASK_PRIORITY=16 -DSL_OPENTHREAD_STACK_TASK_MEM_SIZE=4608 -DSL_OPENTHREAD_APP_TASK_MEM_SIZE=4608 -DSL_OPENTHREAD_CLI_TASK_MEM_SIZE=2048 -DSL_OPENTHREAD_OS_CLI_TASK_SIZE=2048 -DSL_OPENTHREAD_ENABLE_APP_TASK=0 -DSL_OPENTHREAD_ENABLE_CLI_TASK=0 -DCHIP_DEVICE_CONFIG_THREAD_ENABLE_CLI=1 -DCONFIG_ENABLE_UART -DCHIP_HAVE_CONFIG_H=1 -DSL_MATTER_VERSION_STRING=\"v1.3-feature/silabs_dishwasher_app-ea07af9d71-dirty\" -DOTA_PERIODIC_TIMEOUT=86400 -DSILABS_OTA_ENABLED -DSL_MATTER_TEST_EVENT_TRIGGER_ENABLED -DSL_MATTER_TEST_EVENT_TRIGGER_ENABLE_KEY=\"00112233445566778899AABBCCDDEEFF\" -I../../../examples/dishwasher-app/silabs/include -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/examples/energy-management-app/energy-management-common/device-energy-management/include -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/examples/energy-management-app/energy-management-common/energy-reporting/include -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/examples/energy-management-app/energy-management-common/common/include -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/src/platform/silabs/efr32 -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/examples/dishwasher-app/silabs/include -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/examples/platform/silabs/efr32 -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/src/lib -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/examples/platform/silabs -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/src/include -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/src -Igen/include -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/third_party/jlink/segger_rtt/RTT -Igen/include/RTT -Igen/third_party/connectedhomeip/examples/dishwasher-app/silabs/data_model -Igen/third_party/connectedhomeip/examples/dishwasher-app/silabs/data_model/zapgen -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/zzz_generated/app-common -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/third_party/nlassert/repo/include -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/third_party/nlio/repo/include -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/third_party/silabs/simplicity_sdk/util/third_party/openthread/include -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/examples/platform/silabs/efr32/project_include -I../../../examples/dishwasher-app/silabs/third_party/connectedhomeip/examples/providers -c ../../../examples/dishwasher-app/silabs/src/ElectricalSensorManager.cpp -o obj/src/matter-silabs-dishwasher-example.out.ElectricalSensorManager.cpp.o
../../../examples/dishwasher-app/silabs/src/ElectricalSensorManager.cpp: In member function 'void ElectricalSensorManager::UpdateEPMAttributes(OperationalStateEnum)':
../../../examples/dishwasher-app/silabs/src/ElectricalSensorManager.cpp:202:26: error: comparison is always false due to limited range of data type [-Werror=type-limits]
202 | if ((updateState < 0) || (updateState > ERROR_STATE_INDEX))
| ~~~~~~~~~~~~^~~
At global scope:
cc1plus: note: unrecognized command-line option '-Wno-unknown-warning-option' may have been intended to silence earlier diagnostics
cc1plus: all warnings being treated as errors
[1121/1132] c++ obj/src/matter-silabs-dishwasher-example.out.operational-state-delegate-impl.cpp.o
ninja: build stopped: subcommand failed.
Platform
efr32
Build log
dishwasher-app_silabs_build_error.log
No response
Yeah, updateState is an unsigned type, so that test is just doing nothing.
Thanks. So should it be removed or replaced by another test?
I assume removed, but check with whoever wrote that code?
@lpbeliveau-silabs wrote this code.