Hi Geoff, On Tue, 2 Dec 2003, Geoffrey Young wrote:
> the danger here is changing the stable tree willy nilly. I was talking about fixing a fault which is partly the result of a daft and deprecated feature which has caused confusion in the past. Of course I thoroughly agree that changes to the stable tree must be made with the utmost caution and I make no suggestion willy-nilly. > if the bug is rare or obscure... > I feel as though we are required to be extra careful. Agreed that extra careful. I don't agree that one should be extra careful just when he's fixing obscure bugs... :) > I'd be far more likely to implement a simple change that fixed the > broken "feature" (perhaps as rafael suggested) than to add lots of > code that spits out new warnings I'm not at all convinced of the simplicity of the proposed change. It seems to me that (sorry to mix languages in my pseudocode like this :) #ifndef SUPPORT_AUTOMATIC_SCALAR_DEREFERENCE if(ref($variable)) {die "Dereference not supported see Changelog 2003-12-25";} #endif kills the bug; brings it to the attention of everyone who needs to know about it; is about as simple as it gets; and has minimum risk of unforseen consequences. Of course I'd still want it tested. > or otherwise intentionally breaks running production code and forces > shops to retrofit their codebase. Exactly why I suggested a compile-time option to support old code. I wouldn't dream of forcing shops to fix code which wasn't broken, although if it *is* broken I don't see any harm in pointing it out with the appropriate, er, deference. Incidentally as I understand it, the auto-dereference thing never was intended to support anything but scalar references, which is why it always seemed strange to me and I never used it. Heck, this is probably on the wrong List again... :) 73, Ged. -- Reporting bugs: http://perl.apache.org/bugs/ Mail list info: http://perl.apache.org/maillist/modperl.html