From: SourceForge.net <no...@so...> - 2004-04-07 19:03:38
|
Feature Requests item #929926, was opened at 2004-04-05 19:44 Message generated for change (Comment added) made by dkf You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=360894&aid=929926&group_id=10894 >Category: 40. Memory Allocation Group: None Status: Open Resolution: None Priority: 3 Submitted By: Mikhail Teterin (kot) Assigned to: Donal K. Fellows (dkf) Summary: Tcl_Alloc should take WideInt or size_t Initial Comment: Currently Tcl_Alloc causes warnings on 64-bit platforms with things like ckalloc(sizeof(foo)), because sizeof returns size_t; and will break, when people start using large memory machines. Trying to allocate more than 4Gb of RAM seems ridiculous now, but just give it time... ---------------------------------------------------------------------- >Comment By: Donal K. Fellows (dkf) Date: 2004-04-07 14:11 Message: Logged In: YES user_id=79902 I use Tcl on big-iron too, so I really do understand. ---------------------------------------------------------------------- Comment By: Don Porter (dgp) Date: 2004-04-06 23:34 Message: Logged In: YES user_id=80530 my mistake. I overlooked your smiley. ---------------------------------------------------------------------- Comment By: Mikhail Teterin (kot) Date: 2004-04-06 23:27 Message: Logged In: YES user_id=173641 Of course, I read it. That's how I knew Donal's name :-) I'm just trying to impress the importance of this 64-bit cleanlines (and thus the 64-bit godliness) on you, guys, so that, may be, you'll think of a way to bring it in sooner... The const-poisoning was a great thing -- forcing a review of almost entire TCL code. This should be no less usefull for the programmers, and a lot more useful for the users (of big machines). ---------------------------------------------------------------------- Comment By: Don Porter (dgp) Date: 2004-04-06 23:09 Message: Logged In: YES user_id=80530 Did you read TIP 115 or not? ---------------------------------------------------------------------- Comment By: Mikhail Teterin (kot) Date: 2004-04-06 14:28 Message: Logged In: YES user_id=173641 So, if a bug exists for too long, requests to fix it become "feature requests"? :-) Yes, wherever such a thing exists, size_t should be the replacement. That's what it was invented for -- many years ago. Something needs to be done, and quickly (preferably in 8.5 with backport available for 8.4 as a patch). Donal K. Fellows is absolutely right about the 64-bit platforms becoming more common. My client just got a FreeBSD/amd64 system, thanks in no small part to the ability to mmap large files directly, and to the possibility to have 12Gb of RAM (although we only have 2Gb right now). ---------------------------------------------------------------------- Comment By: Donal K. Fellows (dkf) Date: 2004-04-06 10:17 Message: Logged In: YES user_id=79902 This is a known problem, but can't be fixed in 8.5 because it stamps incompatably on an enormous number of APIs. I had a look into it when doing the TIP#72 implementation, and it turns out to be even more pernicious than const-poisoning. The correct type is either 'size_t' or 'unsigned long' (depending on factors that have nothing to do with technical issues.) ---------------------------------------------------------------------- Comment By: Don Porter (dgp) Date: 2004-04-06 04:50 Message: Logged In: YES user_id=80530 See TIP 115: http://purl.org/tcl/tip/115.html for a pending proposal on this issue. ---------------------------------------------------------------------- Comment By: Don Porter (dgp) Date: 2004-04-06 04:47 Message: Logged In: YES user_id=80530 This is a Feature Request not a bug. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=360894&aid=929926&group_id=10894 |