В IAR обнаружился интересный нюанс. В режиме Си есть поддержка
Variable Length Arrays, в режиме С++ ее нет, что логично, в
стандарте такого нет. Теперь берем код написанный для GCC, где VLA и классы могут существовать одновременно в одном файле, и получаем полный облом.
Код примерно такого рода:
float polynomialFit(int n, float* buffer, int degree, double* a)
{
double X[2 * degree + 1];// тот самый VLA
...
std::string func;
...
}
Очевидный вариант, разделить программу на сишную и плюсатую часть, не проходит, так как всё переплетено.