>>15
正しくは
LNil& operator= (const LNil& a_nil);
が勝手に作られてるはず。
使わない場合は private メンバで宣言だけしとくのが定石。

ただ、この場合の問題は LObject の定義にある気がする。
operator==() と間違えてるんじゃない?