IOhannes m zmoelnig wrote:
i think the problem is, that your patch introduces "reserved" symbols in the first place. personally i would remove the entire [string <...>( message and replace it by a [list <...>( (don't use a special selector)
I would like to know if the problems go away with that. (What's a consistency check? It's c++, right?)
no, it's a pd thing. you also get this when you use weird (that is: non pd-ish, user-defined) atoms and pd doesn't know how to handle them.
The particular error "consistency check failed: class_addmethod: text2d_string: bad argument types" is generated in class_addmethod in m_class.c whenever the arguments don't match the type.
For example adding a list method but not giving A_GIMME as the expected type: else if (sel == &s_list) { if (argtype != A_GIMME) goto phooey; class_addlist(c, fn); }
phooey prints the consistency check error:
phooey: bug("class_addmethod: %s_%s: bad argument types\n", c->c_name->s_name, sel->s_name);
So an error like
consistency check failed: class_addmethod: text2d_string: bad argument types
is caused when the expected arguments to text2d_String don't match the type. It has absolutely nothing to do with the existence of a string/blob type unless text2dstring wants string/blob arguments. Maybe the patch is not being applied properly? Why does this happen only with gem when the patch has been applied for the last 6 months and nothing else has broken?
Martin