How I fixed PlatformIO Arduino portGET_ARGUMENT_COUNT() result does not match for 0 arguments
Problem:
When trying to compile your Arduino PlatformIO project, you see multiple error messages like the following.
In file included from /home/uli/.platformio/packages/toolchain-xtensa-esp32/xtensa-esp32-elf/sys-include/stdlib.h:19,
from /home/uli/.platformio/packages/toolchain-xtensa-esp32/xtensa-esp32-elf/include/c++/8.4.0/cstdlib:75,
from /home/uli/.platformio/packages/toolchain-xtensa-esp32/xtensa-esp32-elf/include/c++/8.4.0/stdlib.h:36,
from /home/uli/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:26,
from /home/uli/.platformio/packages/framework-arduinoespressif32/cores/esp32/Print.h:26,
from /home/uli/.platformio/packages/framework-arduinoespressif32/libraries/WiFi/src/WiFi.h:27,
from /home/uli/.platformio/packages/framework-arduinoespressif32/libraries/WiFi/src/WiFi.cpp:24:
/home/uli/.platformio/packages/framework-arduinoespressif32/tools/sdk/esp32/include/freertos/port/xtensa/include/freertos/portmacro.h:717:41: error: static assertion failed: portGET_ARGUMENT_COUNT() result does not match for 0 arguments
_Static_assert(portGET_ARGUMENT_COUNT() == 0, "portGET_ARGUMENT_COUNT() result does not match for 0 arguments");
Solution
For me, the solution was as follows. I had
build_flags = --std=c++17
in my platformio.ini
. Replacing it by
build_flags = --std=gnu++17
fixed the issue for me.