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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [g++.dg/] [special/] [initpri2.C] - Blame information for rev 693

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 693 jeremybenn
/* { dg-do compile { target init_priority } } */
2
 
3
/* Priorities must be in the range [0, 65535].  */
4
void c1()
5
     __attribute__((constructor (-1))); /* { dg-error "priorities" } */
6
void c2()
7
     __attribute__((constructor (65536))); /* { dg-error "priorities" } */
8
void d1()
9
     __attribute__((destructor (-1))); /* { dg-error "priorities" } */
10
void d2()
11
     __attribute__((destructor (65536))); /* { dg-error "priorities" } */
12
 
13
/* Priorities 0-100 are reserved for system libraries.  */
14
void c3()
15
     __attribute__((constructor (50))); /* { dg-warning "reserved" } */
16
void d3()
17
     __attribute__((constructor (50))); /* { dg-warning "reserved" } */
18
 
19
/* Priorities must be integral constants.  */
20
 
21
/* Pointers, even with constant values, are not allowed.  */
22
void c4()
23
     __attribute__((constructor ((void*) 500))); /* { dg-error "priorities" } */
24
void d4()
25
     __attribute__((destructor ((void*) 500))); /* { dg-error "priorities" } */
26
 
27
/* Integer variables are not allowed.  */
28
int i;
29
void c5()
30
     __attribute__((constructor ((i)))); /* { dg-error "priorities" } */
31
void d5()
32
     __attribute__((destructor ((i)))); /* { dg-error "priorities" } */
33
 
34
/* Enumeration constants are allowed.  */
35
enum E { e = 500 };
36
void c6()
37
     __attribute__((constructor ((e))));
38
void d6()
39
     __attribute__((destructor ((e))));

powered by: WebSVN 2.1.0

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