Bug 37141

Summary: syntax error when using type inherited from base class
Product: gcc Reporter: João Eiras <joao.eiras>
Component: c++Assignee: Not yet assigned to anyone <unassigned>
Severity: normal CC: fang, gcc-bugs, gcc, igodard, jbeulich, joao.eiras, jwakely.gcc, pinskia, reichelt, rleigh, smelkov, starlight
Priority: P3    
Version: 4.4.0   
Target Milestone: ---   
Host: Target:
Build: Known to work:
Known to fail: Last reconfirmed:

Description João Eiras 2008-08-16 16:44:28 UTC
The following code sample does not compile, and it should.
I get the error:
gpp_bug_1.cpp: In constructor `B<X>::B()':
gpp_bug_1.cpp:10: error: expected `;' before "x"

G++ version: g++ (GCC) 4.4.0 20080729 (experimental)

template<class X> class A{
	typedef X type_t;

template<class X> class B: A<X>{
	using typename A<X>::type_t;
	B(){type_t x;}

int main_(int argc, char *argv[]){
	return 1;
Comment 1 Andrew Pinski 2008-08-16 20:03:02 UTC

*** This bug has been marked as a duplicate of 14258 ***