Hey mike!



I've decided to give "bus error" a proper kenning: "Clemow's Bane."

Ow, come on, the bus errors like you, they just want to play.
 

Kas, do you think that this is related to the bus errors we were
getting assigning objects in that GrainPattern class?


I wouldn't be surprised. Something seems to be rather wrong with assignment these days. This kind of structure (assigning a sporked function to a Shred object) did work with that syntax in the past so it could be the new reference counting being over-active again.

I just simplified your code to make the real culprit come out;

//================8<==================
fun void dummy()
    {
    while(1)
        {   
        second => now;
        }
    }

Shred foo;
//this runs
//spork ~ dummy();

//I get a segmentation fault at this on Ubuntu
spork ~ dummy() @=> foo;

hour => now;
//==============8<==================

I really think this used to work. To make matters worse this (assuming the same function) seems to work ok;

//=============================
spork ~ dummy() @=> Shred foo;
hour => now;
//===============================

I wouldn't be surprised if it was at least related because I can't think of anything else that would break this.

At least it should help pinpoint the culprit. I suggest add it to the Wiki bug page and we try sprinkling some variation of the working version with some "@" signs. Sprinkling magical "@" signs seems to pacify this bug ;¬).

Yours,
Kas.