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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [g++.dg/] [ipa/] [pr44372.C] - Rev 693

Compare with Previous | Blame | View Log

/* { dg-do compile } */
/* { dg-options "-O -fipa-cp -fipa-cp-clone" } */

template < typename > class S3;

struct S1
{
  struct
  {
    int i[10];
  } s0;
  S1 () : s0 ()
  { }
  template < typename T > S1 (S3 < T > s3, int)
  {
    f (s3);
  }
};

struct S2
{
  template < typename T > S2 s (S3 < T > s3)
  {
    S1 (s3, 0);
  }
  S2 (int i) : j (i)
  { }
  int j;
  S1 s1[10];
};

template < typename > struct S3
{
  S3 ()
  {
    S2 (0).s (*this);
  }
};

static inline void
f (S3 < int > s3)
{
  extern bool m;
  if (m)
    S2 (0).s (s3);
}

S3 < int >s3;

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.