URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 305 |
Rev 338 |
// { dg-do assemble }
|
// { dg-do assemble }
|
//
|
//
|
// Copyright (C) 2000 Free Software Foundation, Inc.
|
// Copyright (C) 2000 Free Software Foundation, Inc.
|
// Contributed by Nathan Sidwell 10 Aug 2000
|
// Contributed by Nathan Sidwell 10 Aug 2000
|
|
|
// bug 371 We failed to subst explicit template args before trying to
|
// bug 371 We failed to subst explicit template args before trying to
|
// deduce the template.
|
// deduce the template.
|
|
|
namespace N
|
namespace N
|
{
|
{
|
enum E { e0 };
|
enum E { e0 };
|
|
|
template< E e > void nf();
|
template< E e > void nf();
|
|
|
}
|
}
|
|
|
template< N::E e > void gf();
|
template< N::E e > void gf();
|
|
|
struct X {
|
struct X {
|
template void xfn ();
|
template void xfn ();
|
template static void sfn ();
|
template static void sfn ();
|
};
|
};
|
|
|
template < class C >
|
template < class C >
|
void tf(C *ptr)
|
void tf(C *ptr)
|
{
|
{
|
N::nf();
|
N::nf();
|
gf();
|
gf();
|
ptr->X::xfn ();
|
ptr->X::xfn ();
|
ptr->C::template xfn ();
|
ptr->C::template xfn ();
|
ptr->template xfn ();
|
ptr->template xfn ();
|
ptr->X::sfn ();
|
ptr->X::sfn ();
|
ptr->C::template sfn ();
|
ptr->C::template sfn ();
|
ptr->template sfn ();
|
ptr->template sfn ();
|
X::sfn ();
|
X::sfn ();
|
C::template sfn ();
|
C::template sfn ();
|
}
|
}
|
|
|
void f(X *ptr)
|
void f(X *ptr)
|
{
|
{
|
ptr->xfn ();
|
ptr->xfn ();
|
tf(ptr);
|
tf(ptr);
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.