Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/initpri1.c @ 132:d34655255c78
update gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 10:21:07 +0900 |
parents | 04ced10e8804 |
children | 1830386684a0 |
line wrap: on
line source
/* { dg-do run { target init_priority } } */ extern void abort (); int i; int j; void c1() __attribute__((constructor (500))); void c2() __attribute__((constructor (700))); void c3() __attribute__((constructor (600))); void c1() { if (i++ != 0) abort (); } void c2() { if (i++ != 2) abort (); } void c3() { if (i++ != 1) abort (); } void d1() __attribute__((destructor (500))); void d2() __attribute__((destructor (700))); void d3() __attribute__((destructor (600))); void d1() { if (--i != 0) abort (); } void d2() { if (--i != 2) abort (); } void d3() { if (j != 2) abort (); if (--i != 1) abort (); } void cd4() __attribute__((constructor (800), destructor (800))); void cd4() { if (i != 3) abort (); ++j; } int main () { if (i != 3) return 1; if (j != 1) abort (); return 0; }