[Bug c++/43135] Possible bug in name resolution during template instantiation

uwe at netbsd dot org gcc-bugzilla@gcc.gnu.org
Mon Feb 22 04:08:00 GMT 2010



------- Comment #3 from uwe at netbsd dot org  2010-02-22 04:08 -------
(In reply to comment #2)
> This is not a bug. Because the base class of Node::OpNode does not
> depend on template arguments, the members of the base class are
> visible in Node::OpNode::f(). On the other hand, since the base
> class of Node::FooOpNode depends on template arguments, the members
> of the base class are not visible during parsing and before template
> arguments are substituted.

But doesn't this error happens during instantiation as the error message
indicates?  If definition of Node::FooNode is commented out, the templates
themselves are accepted.

Also, if the nested classes are un-nested out of Node, the code compiles w/out
errors too.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43135



More information about the Gcc-bugs mailing list