------- Additional Comments From veksler at il dot ibm dot com 2005-08-24 07:11 ------- There is another enhancement possibility for this issue. GCC may mark the instantiated template function is such a way that the linker will detect multiple instantiation (which will lead to undefined behavior). When the linker sees multiple instantiation, it will emit multiple definition of `examine<outer_t<inner_t> >(const outer_t<inner_t> &)'
-- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23542