I have programmed following function:
Code: Select all
static bool powerdown_output(client i2c_master_if i2c, t_output output) {
// some I2C communication ...
if (output == 0 || output == 4) {
for (uint8_t i = output + 1; i < output + 4; i++) {
if (OUTPUT_CONFIG[i].source == OUTPUT_SOURCE_LINK) {
powerdown_output(i2c, i); // problematic code line
}
}
}
return true;
}
If I have commented out the line:Creating app_test3.xe
../src/app_test3.xc:(.dp.data.4+0x4): Error: Meta information ("_Spowerdown_output_0.nstackwords") for function "_Spowerdown_output_0" cannot be determined.
../src/app_test3.xc:(.dp.data.4+0x4): Error: lower bound could not be calculated (function is recursive?).
xmake[1]: *** [bin//app_test3.xe] Error 1
xmake: *** [bin//app_test3.xe] Error 2
Code: Select all
powerdown_output(i2c, i); // problematic code line
This behaviour concerns the IDE version: Community_14.4.1 (build 235-acbb966, Dec-01-2019).
If you have more questions about it, feel free to ask.