http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52620
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |DUPLICATE --- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> 2012-03-19 16:31:04 UTC --- (In reply to comment #2) > (I pasted the wrong bug report, I meant > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21484) That's a dup of PR 14258 so should be fixed for 4.7, and I think this is the same issue. > (In reply to comment #1) > > template <typename T> > > struct bot: med<T> > > { > > using top::type; > > > > This is not valid, med<T> is a dependent base class so name lookup never > > looks > > in it, so top is not known to be a base class. > > Ah, thanks for the clarification! I believe it's a bug in clang if it accepts it. > > If you remove that line G++ accepts the code. > > Ah, somehow I broke my tests. 4.6.3 does not accept it (and is the compiler > I am actually using), but you are right that 4.7.0 is fine with it. Yes, the 'using' code was significantly improved for 4.7, see the release notes at http://gcc.gnu.org/gcc-4.7/changes.html#cxx *** This bug has been marked as a duplicate of bug 14258 ***