2020-02-09 20:31:19 +03:00
|
|
|
extern int printf(const char*, ...);
|
2012-06-18 21:27:32 +04:00
|
|
|
|
2020-02-09 20:31:19 +03:00
|
|
|
struct fred;
|
|
|
|
|
|
|
|
void fred$(struct fred* this)
|
|
|
|
{
|
|
|
|
printf("~fred()\n");
|
|
|
|
}
|
|
|
|
|
|
|
|
struct __attribute__((__cleanup__(fred$))) fred
|
2012-06-18 21:27:32 +04:00
|
|
|
{
|
|
|
|
int boris;
|
|
|
|
int natasha;
|
|
|
|
};
|
|
|
|
|
2014-01-06 22:56:26 +04:00
|
|
|
int main()
|
2012-06-18 21:27:32 +04:00
|
|
|
{
|
2020-02-09 20:31:19 +03:00
|
|
|
struct fred __attribute__((__cleanup__(fred$))) bloggs;
|
2012-06-18 21:27:32 +04:00
|
|
|
|
|
|
|
bloggs.boris = 12;
|
|
|
|
bloggs.natasha = 34;
|
|
|
|
|
|
|
|
printf("%d\n", bloggs.boris);
|
|
|
|
printf("%d\n", bloggs.natasha);
|
|
|
|
|
|
|
|
struct fred jones[2];
|
|
|
|
jones[0].boris = 12;
|
|
|
|
jones[0].natasha = 34;
|
|
|
|
jones[1].boris = 56;
|
|
|
|
jones[1].natasha = 78;
|
|
|
|
|
|
|
|
printf("%d\n", jones[0].boris);
|
|
|
|
printf("%d\n", jones[0].natasha);
|
|
|
|
printf("%d\n", jones[1].boris);
|
|
|
|
printf("%d\n", jones[1].natasha);
|
|
|
|
|
|
|
|
return 0;
|
|
|
|
}
|