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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [g++.old-deja/] [g++.brendan/] [code-gen1.C] - Rev 699

Compare with Previous | Blame | View Log

// { dg-do run  }
// GROUPS passed code-generation
// Check that sub-word sized structs/classes are passed correctly
// if the struct/class has a constructor (i.e. ANY constructor).

extern "C" int printf (const char *, ...); 

struct base {
        unsigned int f1 : 8;
        unsigned int f2 : 8;

        base (int ii)
        {
        }
};

base global_base (7);

int test2 (base formal_base);

int main ()
{
        global_base.f1 = 0x55;
        global_base.f2 = 0xee;

        if (test2 (global_base) == 0)
          printf ("PASS\n");
        else
          { printf ("FAIL\n"); return 1; }

        return 0;
}

int test2 (base formal_base)
{
        if (formal_base.f1 != global_base.f1)
                return -1;
        if (formal_base.f2 != global_base.f2)
                return -1;
        return 0;
}

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.