Hello,

this trivial program

        process = 100,0,_ : rdtable;

compiles to

        int iConst0;
        int fSampleRate;

        void instanceConstants(int sample_rate)
        {
                fSampleRate = sample_rate;
                iConst0 = 100 - 1;
        }

        void compute(int count, FAUSTFLOAT** inputs, FAUSTFLOAT** outputs)
        {
                FAUSTFLOAT* input0 = inputs[0];
                FAUSTFLOAT* output0 = outputs[0];
                for (int i0 = 0; i0 < count; i0 = i0 + 1) {
                        output0[i0] = 
FAUSTFLOAT(itbl0mydspSIG0[std::max<int>(0, 
std::min<int>(int(float(input0[i0])), iConst0))]);
                }
        }

obviously, "iConst0 == 100 - 1" makes no sense, compute() should use "99".

I guess this was caused by the commit d7ce024b76f538b73 
("sigWriteReadTable/sigReadOnlyTable
size argument is actually computed in 'simplify', so move -ct 1 check after 
simplification.")
but I didn't check.

Oleg.



_______________________________________________
Faudiostream-devel mailing list
Faudiostream-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-devel

Reply via email to