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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gcc-4.2.2/] [gcc/] [testsuite/] [g++.old-deja/] [g++.law/] [ctors16.C] - Diff between revs 154 and 816

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 154 Rev 816
// { 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.