Incompatible pointer type error in fluid.plotter.c when compiling puredata external for Raspberry Pi

Hi,

compiling flucoma-pd external for raspberry pi (Raspian Debian 13.2) results in an incompatible pointer error:

fluid.plotter.c:715:74: error: assignment to ´t_fpoint *´ {aka ´struct _fpoint *´} from incompatible pointer type ´t_symbol *´{aka ´stru t _symbol *´} [-Wincompatible-pointer-types] x->x_send = x->x_snd_raw = x->x_receive = x->x_rcv_raw = x->x_points = &s_;

I think x_send, x_snd_raw, x_receive, x_rcv_raw are all t_symbol *

  • x_points is t_fpoint *

  • &s_ is a t_symbol **_

So assigning &s_ to x_points is invalid and the compiler correctly complains.

I changed the initialization in fplot_new so that the symbol fields are still initialised to &s_ and x_points is initialised separately as a t_fpoint *, using NULL*_ The changes are around lines 715-717:

x->x_edit = cv->gl_edit;
x->x_send = x->x_snd_raw = x->x_receive = x->x_rcv_raw = &s_;
x->x_points = NULL;
x->x_rcv_set = x->x_snd_set = x->x_latch = x->x_nbhighlight = x->x_x_min = x->x_y_min = x->x_x_refmin = x->x_y_refmin = 0;

With this it now compiles and the external seems to run ok.

hello!

Thanks for this, I’ll check a bit more when I’m out of this week’s double rush, to make sure it was a real error from my side and also that I can correct waveform (which is almost the same code so should have that error too)

more soon

1 Like