diff --git a/libraries/BluetoothHIDMaster/examples/KeyboardPiano/KeyboardPiano.ino b/libraries/BluetoothHIDMaster/examples/KeyboardPiano/KeyboardPiano.ino index bff98b8bf..bdf6402bc 100644 --- a/libraries/BluetoothHIDMaster/examples/KeyboardPiano/KeyboardPiano.ino +++ b/libraries/BluetoothHIDMaster/examples/KeyboardPiano/KeyboardPiano.ino @@ -91,7 +91,7 @@ void mb(void *cbdata, int butt, bool down) { inline uint32_t stepForHz(float hz) { const float stepHz = 1000.0 / 44100.0; const float step = hz * stepHz; - return (uint32_t)(step * 65536.0); + return (uint32_t)(step * 65536.0f); } uint32_t keyStepMap[128]; // The frequency of any raw HID key diff --git a/libraries/BluetoothHIDMaster/examples/KeyboardPianoBLE/KeyboardPianoBLE.ino b/libraries/BluetoothHIDMaster/examples/KeyboardPianoBLE/KeyboardPianoBLE.ino index ee2f76a90..59ea4c133 100644 --- a/libraries/BluetoothHIDMaster/examples/KeyboardPianoBLE/KeyboardPianoBLE.ino +++ b/libraries/BluetoothHIDMaster/examples/KeyboardPianoBLE/KeyboardPianoBLE.ino @@ -91,7 +91,7 @@ void mb(void *cbdata, int butt, bool down) { inline uint32_t stepForHz(float hz) { const float stepHz = 1000.0 / 44100.0; const float step = hz * stepHz; - return (uint32_t)(step * 65536.0); + return (uint32_t)(step * 65536.0f); } uint32_t keyStepMap[128]; // The frequency of any raw HID key diff --git a/libraries/LittleFS/examples/SpeedTest/SpeedTest.ino b/libraries/LittleFS/examples/SpeedTest/SpeedTest.ino index 6478128ad..39860eb84 100644 --- a/libraries/LittleFS/examples/SpeedTest/SpeedTest.ino +++ b/libraries/LittleFS/examples/SpeedTest/SpeedTest.ino @@ -21,11 +21,11 @@ const char *rate(unsigned long start, unsigned long stop, unsigned long bytes) { strcpy_P(buff, PSTR("Inf b/s")); } else { unsigned long delta = stop - start; - float r = 1000.0 * (float)bytes / (float)delta; - if (r >= 1000000.0) { - sprintf_P(buff, PSTR("%0.2f MB/s"), r / 1000000.0); - } else if (r >= 1000.0) { - sprintf_P(buff, PSTR("%0.2f KB/s"), r / 1000.0); + float r = 1000.0f * (float)bytes / (float)delta; + if (r >= 1000000.0f) { + sprintf_P(buff, PSTR("%0.2f MB/s"), (double)r / 1000000.0); + } else if (r >= 1000.0f) { + sprintf_P(buff, PSTR("%0.2f KB/s"), (double)r / 1000.0); } else { sprintf_P(buff, PSTR("%d bytes/s"), (int)r); } diff --git a/libraries/Mouse/examples/Circle/Circle.ino b/libraries/Mouse/examples/Circle/Circle.ino index fde1ad3f9..f1d71aba6 100644 --- a/libraries/Mouse/examples/Circle/Circle.ino +++ b/libraries/Mouse/examples/Circle/Circle.ino @@ -17,7 +17,7 @@ void loop() { float r = 100; float ox = 0.0; float oy = 0.0; - for (float a = 0; a < 2.0 * 3.14159; a += 0.1) { + for (float a = 0.0f; a < 2.0f * 3.14159f; a += 0.1f) { float ax = r * cos(a); float ay = r * sin(a); float dx = ax - ox; diff --git a/libraries/MouseAbsolute/examples/CircleAbsolute/CircleAbsolute.ino b/libraries/MouseAbsolute/examples/CircleAbsolute/CircleAbsolute.ino index 06f9f60a7..f87986da8 100644 --- a/libraries/MouseAbsolute/examples/CircleAbsolute/CircleAbsolute.ino +++ b/libraries/MouseAbsolute/examples/CircleAbsolute/CircleAbsolute.ino @@ -17,7 +17,7 @@ void loop() { float r = 1000; for (float cx = 1000; cx <= 16000; cx += 4000) { for (float cy = 1000; cy <= 16000; cy += 4000) { - for (float a = 0; a < 2.0 * 3.14159; a += 0.1) { + for (float a = 0.0f; a < 2.0f * 3.14159f; a += 0.1f) { float ax = r * cos(a); float ay = r * sin(a); MouseAbsolute.move(ax + cx, ay + cy, 0); diff --git a/libraries/MouseBLE/examples/BLECircle/BLECircle.ino b/libraries/MouseBLE/examples/BLECircle/BLECircle.ino index dc7942a21..09779f551 100644 --- a/libraries/MouseBLE/examples/BLECircle/BLECircle.ino +++ b/libraries/MouseBLE/examples/BLECircle/BLECircle.ino @@ -16,7 +16,7 @@ void loop() { float r = 100; float ox = 0.0; float oy = 0.0; - for (float a = 0; a < 2.0 * 3.14159; a += 0.1) { + for (float a = 0.0f; a < 2.0f * 3.14159f; a += 0.1f) { float ax = r * cos(a); float ay = r * sin(a); float dx = ax - ox; diff --git a/libraries/MouseBLE/examples/BLECircleAbsolute/BLECircleAbsolute.ino b/libraries/MouseBLE/examples/BLECircleAbsolute/BLECircleAbsolute.ino index 598fcbdd9..6cf4cf4b9 100644 --- a/libraries/MouseBLE/examples/BLECircleAbsolute/BLECircleAbsolute.ino +++ b/libraries/MouseBLE/examples/BLECircleAbsolute/BLECircleAbsolute.ino @@ -17,7 +17,7 @@ void loop() { float r = 1000; for (float cx = 1000; cx <= 16000; cx += 4000) { for (float cy = 1000; cy <= 16000; cy += 4000) { - for (float a = 0; a < 2.0 * 3.14159; a += 0.1) { + for (float a = 0.0f; a < 2.0f * 3.14159f; a += 0.1f) { float ax = r * cos(a); float ay = r * sin(a); MouseBLE.move(ax + cx, ay + cy, 0); diff --git a/libraries/MouseBLE/examples/BLECircleKeysJoystick/BLECircleKeysJoystick.ino b/libraries/MouseBLE/examples/BLECircleKeysJoystick/BLECircleKeysJoystick.ino index e549d62e8..b72da2c96 100644 --- a/libraries/MouseBLE/examples/BLECircleKeysJoystick/BLECircleKeysJoystick.ino +++ b/libraries/MouseBLE/examples/BLECircleKeysJoystick/BLECircleKeysJoystick.ino @@ -59,7 +59,7 @@ void loop() { float r = 100; float ox = 0.0; float oy = 0.0; - for (float a = 0; a < 2.0 * 3.14159; a += 0.1) { + for (float a = 0.0f; a < 2.0f * 3.14159f; a += 0.1f) { float ax = r * cos(a); float ay = r * sin(a); float dx = ax - ox; diff --git a/libraries/MouseBT/examples/BTCircle/BTCircle.ino b/libraries/MouseBT/examples/BTCircle/BTCircle.ino index e4ea95af7..949b71614 100644 --- a/libraries/MouseBT/examples/BTCircle/BTCircle.ino +++ b/libraries/MouseBT/examples/BTCircle/BTCircle.ino @@ -17,7 +17,7 @@ void loop() { float r = 100; float ox = 0.0; float oy = 0.0; - for (float a = 0; a < 2.0 * 3.14159; a += 0.1) { + for (float a = 0.0f; a < 2.0f * 3.14159f; a += 0.1f) { float ax = r * cos(a); float ay = r * sin(a); float dx = ax - ox; diff --git a/libraries/MouseBT/examples/BTCircleAbsolute/BTCircleAbsolute.ino b/libraries/MouseBT/examples/BTCircleAbsolute/BTCircleAbsolute.ino index 56f36cbfa..3d225a80d 100644 --- a/libraries/MouseBT/examples/BTCircleAbsolute/BTCircleAbsolute.ino +++ b/libraries/MouseBT/examples/BTCircleAbsolute/BTCircleAbsolute.ino @@ -17,7 +17,7 @@ void loop() { float r = 1000; for (float cx = 1000; cx <= 16000; cx += 4000) { for (float cy = 1000; cy <= 16000; cy += 4000) { - for (float a = 0; a < 2.0 * 3.14159; a += 0.1) { + for (float a = 0.0f; a < 2.0f * 3.14159f; a += 0.1f) { float ax = r * cos(a); float ay = r * sin(a); MouseBT.move(ax + cx, ay + cy, 0); diff --git a/libraries/SD/examples/CardInfo/CardInfo.ino b/libraries/SD/examples/CardInfo/CardInfo.ino index d69b720b2..11ba060a5 100644 --- a/libraries/SD/examples/CardInfo/CardInfo.ino +++ b/libraries/SD/examples/CardInfo/CardInfo.ino @@ -137,7 +137,7 @@ void setup() { volumesize /= 1024; Serial.println(volumesize); Serial.print("Volume size (Gb): "); - Serial.println((float)volumesize / 1024.0); + Serial.println((float)volumesize / 1024.0f); Serial.print("Card size: "); Serial.println((float)SD.size64() / 1000); diff --git a/libraries/SingleFileDrive/examples/DataLoggerUSB/DataLoggerUSB.ino b/libraries/SingleFileDrive/examples/DataLoggerUSB/DataLoggerUSB.ino index 1ee6864c1..e572798e3 100644 --- a/libraries/SingleFileDrive/examples/DataLoggerUSB/DataLoggerUSB.ino +++ b/libraries/SingleFileDrive/examples/DataLoggerUSB/DataLoggerUSB.ino @@ -82,7 +82,7 @@ void loop() { // Don't want the USB to connect during an update! File f = LittleFS.open("data.csv", "a"); if (f) { - f.printf("%lu,%lu,%f,%lu\n", cnt++, millis(), temp, hwrand); + f.printf("%lu,%lu,%f,%lu\n", cnt++, millis(), (double)temp, hwrand); f.close(); } } diff --git a/libraries/lwIP_Ethernet/examples/EthernetLibCompatible/EthernetLibCompatible.ino b/libraries/lwIP_Ethernet/examples/EthernetLibCompatible/EthernetLibCompatible.ino index f352fcbda..1f6742984 100644 --- a/libraries/lwIP_Ethernet/examples/EthernetLibCompatible/EthernetLibCompatible.ino +++ b/libraries/lwIP_Ethernet/examples/EthernetLibCompatible/EthernetLibCompatible.ino @@ -118,9 +118,9 @@ void loop() { Serial.print("Received "); Serial.print(byteCount); Serial.print(" bytes in "); - float seconds = (float)(endMicros - beginMicros) / 1000000.0; + float seconds = (float)(endMicros - beginMicros) / 1000000.0f; Serial.print(seconds, 4); - float rate = (float) byteCount / seconds / 1000.0; + float rate = (float) byteCount / seconds / 1000.0f; Serial.print(", rate = "); Serial.print(rate); Serial.print(" kbytes/second"); diff --git a/libraries/rp2040/examples/Temperature/Temperature.ino b/libraries/rp2040/examples/Temperature/Temperature.ino index 5b2c54b8e..f333e9e70 100644 --- a/libraries/rp2040/examples/Temperature/Temperature.ino +++ b/libraries/rp2040/examples/Temperature/Temperature.ino @@ -6,6 +6,6 @@ void setup() { } void loop() { - Serial.printf("Core temperature: %2.1fC\n", analogReadTemp()); + Serial.printf("Core temperature: %2.1fC\n", (double)analogReadTemp()); delay(1000); } diff --git a/tests/common.sh b/tests/common.sh index 290c87aae..8409052bb 100755 --- a/tests/common.sh +++ b/tests/common.sh @@ -41,6 +41,7 @@ EOL /UserSPIDriver/ /Adafruit_TinyUSB_Arduino/ /ArduinoISP/ +/p03_LoveOMeter/ /p08_DigitalHourglass/ /p13_TouchSensorLamp/ /StringComparisonOperators/ @@ -234,8 +235,8 @@ function install_ide() debug_flags="-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE -DDEBUG_RP2040_PORT=Serial" fi # Set custom warnings for all builds (i.e. could add -Wextra at some point) - echo "compiler.c.extra_flags=-Wall -Wextra -Werror -Wno-ignored-qualifiers $debug_flags" > rp2040/platform.local.txt - echo "compiler.cpp.extra_flags=-Wall -Wextra -Werror -Wno-ignored-qualifiers -Wno-overloaded-virtual $debug_flags" >> rp2040/platform.local.txt + echo "compiler.c.extra_flags=-Wall -Wextra -Werror -Wdouble-promotion -Wno-ignored-qualifiers $debug_flags" > rp2040/platform.local.txt + echo "compiler.cpp.extra_flags=-Wall -Wextra -Werror -Wdouble-promotion -Wno-ignored-qualifiers -Wno-overloaded-virtual $debug_flags" >> rp2040/platform.local.txt echo -e "\n----platform.local.txt----" cat rp2040/platform.local.txt echo -e "\n----\n"