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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [g++.dg/] [template/] [qualttp16.C] - Rev 801

Go to most recent revision | Compare with Previous | Blame | View Log

// Copyright (C) 2001 Free Software Foundation
// Contributed by Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
// { dg-do run }

extern "C" void abort();

struct A
{
        template <class T> class B {};
};

template <template <class> class TT, class T> struct X
{
        TT<int> y;
        T z;
        int f() { return 0; }
};

template <class T> struct X<T::template B, T>
{
        typename T::template B<int> y;
        T z;
        int f() { return 1; }
};

template <class T> struct C
{
        X<T::template B, A> x;
};

int main()
{
        C<A> c;
        X<A::B, A> x1;
        X<A::B, int> x2;
        if (x1.f() != 1)
                abort();
        if (x2.f() != 0)
                abort();
}

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

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