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

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [gcc/] [testsuite/] [g++.dg/] [template/] [typedef32.C] - Rev 328

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

// Origin: PR c++/43704
// { dg-do compile }

template<typename T2, typename T3>
struct if_
{
 typedef T2 type;
};

template<class I1>
struct iterator_restrict_traits
{
    struct iterator_category {};
};

template<class T>
struct matrix
{
 struct ci {struct ic {};};
 class i {};
};

template<class M, class TRI>
struct triangular_adaptor
{
   typedef typename if_<typename M::ci,typename M::i>::type ty1;
   class iterator2 :  iterator_restrict_traits<typename ty1::ic>::iterator_category
   {
   };
};

template<class M>
struct banded_adaptor
{
  typedef typename if_<typename M::ci,typename M::i>::type ty1;
  class iterator1 :  iterator_restrict_traits<typename ty1::ic>::iterator_category
  {
  };
};

template<class T>
struct singular_decomposition
{
  banded_adaptor<matrix<double> >::iterator1 it1;
};

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.