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

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [g++.dg/] [other/] [init2.C] - Diff between revs 301 and 338

Only display areas with differences | Details | Blame | View Log

Rev 301 Rev 338
// { dg-do run }
// { dg-do run }
// Copyright (C) 2001 Free Software Foundation, Inc.
// Copyright (C) 2001 Free Software Foundation, Inc.
// Contributed by Nathan Sidwell 20 Dec 2001 
// Contributed by Nathan Sidwell 20 Dec 2001 
// PR 160. Wrong code emitted for some reference initializers.
// PR 160. Wrong code emitted for some reference initializers.
void Foo ()
void Foo ()
{
{
}
}
int fail;
int fail;
class C
class C
{
{
  public:
  public:
  int m;
  int m;
  int &r;
  int &r;
  C () ;
  C () ;
};
};
C::C ()
C::C ()
  : m (1), r ((Foo (), m))
  : m (1), r ((Foo (), m))
{
{
  m = 10;
  m = 10;
  if (r != m)
  if (r != m)
    fail = 1;
    fail = 1;
  else if (&m != &r)
  else if (&m != &r)
    fail = 2;
    fail = 2;
}
}
int main ()
int main ()
{
{
  int m (1);
  int m (1);
  int &r ((Foo (),m));
  int &r ((Foo (),m));
  m = 10;
  m = 10;
  if (r != m)
  if (r != m)
    fail = 3;
    fail = 3;
  else if (&r != &m)
  else if (&r != &m)
    fail = 4;
    fail = 4;
  if (!fail)
  if (!fail)
    {
    {
      C c;
      C c;
    }
    }
  return fail;
  return fail;
}
}
 
 

powered by: WebSVN 2.1.0

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