Either I totally failed to understand how it's supposed to work, or these lfuns are quite non-functional:
class T(string t){ T `+=(string s){ t+=s;return this; } } T o = T(""); o->t;
(7) Result: ""
o+="bar";
Incompatible types Unknown program: `+(HilfeInput()->T(),"bar")
Obviously Pike is calling `+(o, "bar"), and ignoring the existence of lfun::`+=() in T...