This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
make target faster than bootstrap
- To: gcc-help at gcc dot gnu dot org
- Subject: make target faster than bootstrap
- From: Larry Evans <cppljevans at earthlink dot net>
- Date: Wed, 14 Jun 2000 15:44:35 -0500
Each time I've done `cvs update` followed by the configure, and then
make bootstrap, the bootstrap target
takes several hours to complete. Is there any faster target. All I
really want is gcc/cc1plus to try and track
down a bug revealed by the following code:
-------------- cut here----------
//Purpose:
// Test nested template as template template arg.
//Result:
// get Compile-time error:
// `C' is not a template
template
< template<typename S>class T
>
struct
A
{ T<int> m_t;
};
struct
B
{
template
< typename V
>
struct
C
{ V m_v;
};
};
A
<B
::C
>
z
;
-------------- cut here----------
I'd also welcome any suggestions about where to look. I've found
something that looks suspicious in pt.c in function,
lookup_template_class.
The when the d1 arg to the function is an IDENTIFIER_NODE with name C,
the
else part of the 2nd if is selected:
if (context)
push_decl_namespace (context);
template = lookup_name (d1, /*prefer_type=*/0);
template = maybe_get_template_decl_from_type_decl (template);
if (context)
pop_decl_namespace ();
However, the context is not a namespace, as suggested by the
push_decl_namespace name. As a result
the global namespace is pushed on the stack.