mirror of
https://github.com/nArnoSNES/tcc-65816.git
synced 2025-02-21 11:29:01 +00:00
51 lines
785 B
C
51 lines
785 B
C
/* Tests for #pragma init and #pragma fini. */
|
|
|
|
/* { dg-do run { target *-*-solaris2.* } } */
|
|
|
|
extern void abort ();
|
|
|
|
#pragma init /* { dg-error "malformed" } */
|
|
#pragma init () /* { dg-error "malformed" } */
|
|
#pragma init init_func /* { dg-error "malformed" } */
|
|
|
|
#pragma fini /* { dg-error "malformed" } */
|
|
#pragma fini () /* { dg-error "malformed" } */
|
|
#pragma fini fini_func /* { dg-error "malformed" } */
|
|
|
|
#pragma init (init_func, init_static_func)
|
|
|
|
int glob_1, glob_2;
|
|
|
|
void init_func (void)
|
|
{
|
|
glob_1 = 1;
|
|
}
|
|
|
|
static void init_static_func (void)
|
|
{
|
|
glob_2 = 2;
|
|
}
|
|
|
|
#pragma fini (fini_func, fini_static_func)
|
|
|
|
void fini_func (void)
|
|
{
|
|
|
|
}
|
|
|
|
static void fini_static_func (void)
|
|
{
|
|
|
|
}
|
|
|
|
int main()
|
|
{
|
|
if (glob_1 != 1)
|
|
abort ();
|
|
|
|
if (glob_2 != 2)
|
|
abort ();
|
|
|
|
return 0;
|
|
}
|