grafana / prometheus-arduino

Apache License 2.0
47 stars 9 forks source link

Three functions with undefined return behavior #2

Closed RichiH closed 3 years ago

RichiH commented 3 years ago

Quoth the 'piler:

/home/richih/Arduino/libraries/PrometheusArduino/src/WriteRequest.cpp: In static member function 'static bool WriteRequest::callback_encode_timeseries(pb_ostream_t*, const pb_field_t*, void* const*)':
/home/richih/Arduino/libraries/PrometheusArduino/src/WriteRequest.cpp:112:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
/home/richih/Arduino/libraries/PrometheusArduino/src/WriteRequest.cpp: In static member function 'static bool WriteRequest::callback_encode_labels(pb_ostream_t*, const pb_field_t*, void* const*)':
/home/richih/Arduino/libraries/PrometheusArduino/src/WriteRequest.cpp:130:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
/home/richih/Arduino/libraries/PrometheusArduino/src/WriteRequest.cpp: In static member function 'static bool WriteRequest::callback_encode_samples(pb_ostream_t*, const pb_field_t*, void* const*)':
/home/richih/Arduino/libraries/PrometheusArduino/src/WriteRequest.cpp:158:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^

From context, I presume they should all return true by default, but I am not certain without a deeper dive.

RichiH commented 3 years ago

Datapoint: putting return true; into all three stops my ESP32 Pico D4 from crashlooping.

RichiH commented 3 years ago

Closed by https://github.com/grafana/prometheus-arduino/commit/3999bd1f0a5a2b74ac963b746950f4cbc58f148d