OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [g++.old-deja/] [g++.jason/] [template43.C] - Diff between revs 305 and 338

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

Rev 305 Rev 338
// { dg-do run  }
// { dg-do run  }
// Test matching of partial specializations.
// Test matching of partial specializations.
template 
template 
class EQUAL {
class EQUAL {
public:
public:
        enum { value = 0 };
        enum { value = 0 };
};
};
template 
template 
class EQUAL {
class EQUAL {
public:
public:
        enum { value = 1 };
        enum { value = 1 };
};
};
int x;
int x;
int y;
int y;
int equals_x_x = EQUAL<&x,&x>::value; // expected value: 1
int equals_x_x = EQUAL<&x,&x>::value; // expected value: 1
int equals_x_y = EQUAL<&x,&y>::value; // expected value: 0
int equals_x_y = EQUAL<&x,&y>::value; // expected value: 0
int equals_y_x = EQUAL<&y,&x>::value; // expected value: 0
int equals_y_x = EQUAL<&y,&x>::value; // expected value: 0
int equals_y_y = EQUAL<&y,&y>::value; // expected value: 1
int equals_y_y = EQUAL<&y,&y>::value; // expected value: 1
int main ()
int main ()
{
{
  if (equals_x_x == 1
  if (equals_x_x == 1
      && equals_x_y == 0
      && equals_x_y == 0
      && equals_y_x == 0
      && equals_y_x == 0
      && equals_y_y == 1)
      && equals_y_y == 1)
    return 0;
    return 0;
  return 1;
  return 1;
}
}
 
 

powered by: WebSVN 2.1.0

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