"H. S. Teoh" <[email protected]> wrote in message news:[email protected]... > On Sat, Mar 10, 2012 at 11:31:47PM -0500, Nick Sabalausky wrote: >> "H. S. Teoh" <[email protected]> wrote in message >> news:[email protected]... > [...] >> My understanding is that the *only* thing preventing vitrual template >> functions is the possibility of pre-compiled closed-source static >> libs. Which is why I've long been in favor of allowing vitrual >> template functions *as long as* there's no closed-source static libs >> preventing it. Why should OSS have to pay costs that only apply to >> closed source? > > I thought the reason was that every instance of the template will need a > vtable entry, and the compiler may not be able to know beforehand which > instances will actually exist? You *could* in theory have the compiler > scan the entire program for all instances, I suppose, but that will > prevent incremental compilation and loading of dynamic libs, OSS or not. > Plus it may slow down the compiler significantly. >
What I'm suggesting is flipping that around: Instead of saying "Virtual template functions prevent incremental compilation and dynamic libs: And that's an unreasonable limitation", we say "Incremental compilation and dynamic libs prevent virtual template functions: So *if you need to use those*, you can't use virtual template functions." Keep in mind too, that even incremental compilation and dynamic libs *can* still work with virtual template functions *provided that* there's no overriding across compilation unit boundaries. I don't think that's a totally unreasonable limitation for virtual template functions to be worthwhile for _many_ people, even if it doesn't make virtual template functions practical for *everyone*. > > [...] >> Another great one, which is very similar to one I've enjoyed >> repeating: >> >> What are a redneck's last words? "Hey y'all, watch this!" > [...] > > And another one in response: > > Famous last words: I *think* this will work... > Yet another one, I just recently came across (not actually for real, but it would be funny): Written on someone's tombstone: "I *told* you I was sick!" Along similar lines (this one's a true story), my Dad's Aunt and Uncle bought their own tombstone ahead of time, and had their picture taken sitting on each side of it, both of them smoking. (The irony was, of course, deliberate. My family's a bit weird ;) )
