OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.2.2/] [gcc/] [testsuite/] [g++.dg/] [template/] [crash21.C] - Diff between revs 149 and 154

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 149 Rev 154
// { dg-do compile }
// { dg-do compile }
// Origin: Debian GCC maintainers 
// Origin: Debian GCC maintainers 
//         Wolfgang Bangerth 
//         Wolfgang Bangerth 
// PR c++/16706: Dependent type calculation during access checking
// PR c++/16706: Dependent type calculation during access checking
template  struct B {
template  struct B {
    B() throw() {}
    B() throw() {}
    struct S { };
    struct S { };
    static int i;
    static int i;
    typedef unsigned short int dummy;
    typedef unsigned short int dummy;
};
};
template 
template 
struct allocator: B<_Tp> {
struct allocator: B<_Tp> {
    template struct rebind
    template struct rebind
    { typedef allocator<_Tp1> other; };
    { typedef allocator<_Tp1> other; };
};
};
template
template
struct X {
struct X {
    typename allocator::template rebind::other i;
    typename allocator::template rebind::other i;
    typedef int* dummy;
    typedef int* dummy;
};
};
template  class A {
template  class A {
    typedef typename X >::dummy dummy;
    typedef typename X >::dummy dummy;
    template  class XWrapper;
    template  class XWrapper;
};
};
template 
template 
template  struct A::XWrapper
template  struct A::XWrapper
{
{
    XWrapper() {}
    XWrapper() {}
    X > x;
    X > x;
};
};
template class A::XWrapper;
template class A::XWrapper;
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.