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.0rc2/] [gcc/] [testsuite/] [g++.old-deja/] [g++.law/] [ctors16.C] - Diff between revs 305 and 384

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

Rev 305 Rev 384
// { dg-do run  }
// { dg-do run  }
// GROUPS passed constructors
// GROUPS passed constructors
// ctor file
// ctor file
// Message-Id: <9306021533.AA14347@icepick.jts.com>
// Message-Id: <9306021533.AA14347@icepick.jts.com>
// From: roland@jts.com (Roland Knight )
// From: roland@jts.com (Roland Knight )
// Subject: gcc 2.4.1 bug
// Subject: gcc 2.4.1 bug
// Date:   Wed, 2 Jun 1993 11:33:34 -0400
// Date:   Wed, 2 Jun 1993 11:33:34 -0400
#include 
#include 
#include 
#include 
#include 
#include 
char stuff[50];
char stuff[50];
char *p = stuff;
char *p = stuff;
class A {
class A {
public:
public:
    A() { *p++ = 'A';}
    A() { *p++ = 'A';}
};
};
class B {
class B {
public:
public:
    B() { *p++ = 'B'; }
    B() { *p++ = 'B'; }
};
};
class C : public A, public B {
class C : public A, public B {
public:
public:
    C() : B(), A() { *p++ = 'C'; }
    C() : B(), A() { *p++ = 'C'; }
};
};
class D : public A, public B {
class D : public A, public B {
public:
public:
    D() : B() { *p++ = 'D'; }
    D() : B() { *p++ = 'D'; }
};
};
class E : public A, public B {
class E : public A, public B {
public:
public:
    E() { *p++ = 'E'; }
    E() { *p++ = 'E'; }
};
};
int main() {
int main() {
    C c;
    C c;
    D d;
    D d;
    E e;
    E e;
    if (strncmp ("ABCABDABE", stuff, 9))
    if (strncmp ("ABCABDABE", stuff, 9))
        { printf ("FAIL\n"); return 1; }
        { printf ("FAIL\n"); return 1; }
    else
    else
        printf ("PASS\n");
        printf ("PASS\n");
}
}
 
 

powered by: WebSVN 2.1.0

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