Dear Chris, On Mon, 9 May 2005, Chris Dams wrote:
On Mon, 9 May 2005, Jens Vollinga wrote:
But seriously, I thought you and Richie solved that issue more or less?
Well, I submitted a patch that solved the issue. This patch was only partly applied. Actually, only the code-beautifying part of it was applied and this change may, depending on the compiler, not even generate a different *.so file.
The reason for this is twofold. Firstly, my patch breaks binary compatibility. Secondly, Richy was not certain whether he liked that my patch throws all references to flyweights out of the library and only keeps flyweights as numeric*'s and as ex-es. Of course it is quite possible to make a five-or-so-line class that emulates the behaviour of references and initializes in a safe way. On the other hand, that would probably still break binary compatibility. Or maybe not, as I showed in a private mail, but that results is some dirty hacking, that could possibly break things for some people.
Since Richy is apparently still thinking about what would be best, I am not sure what is going to be done.
Actually, I'm not. Sorry if I gave the impression. As you notice, this binary compatibilty issue makes your patch eligible for GiNaC 1.4.0 at best. If your patch solves a real problem, then we should reconsider it. But my impression was that it only solved a theoretical problem that no user of the library could possibly hit. Wrong? Regards -richy. -- Richard B. Kreckel <http://www.ginac.de/~kreckel/> k