[patch] std::string::operator[] extension in debug mode

Jonathan Wakely cow@compsoc.man.ac.uk
Thu May 19 17:02:00 GMT 2005


On Thu, May 19, 2005 at 08:04:31PM +0200, Gabriel Dos Reis wrote:

> A question I have is why conditionalizing the extern template stuff on
> debug does not work.

Because the lib was not built with debug, so the extern template
instantiation (sans assertions) is always in the lib.  If you disable
extern templates your .o file includes an implicit instantiation (with
assertions).  When you link to the lib you get ODR.

jon

-- 
"It is practically impossible to teach good programming to students
 that have had a prior exposure to BASIC: as potential programmers
 they are mentally mutilated beyond hope of regeneration."
	- Edsger Dijkstra



More information about the Libstdc++ mailing list