blob: ddc25296d8ab7cf8a6c74ba88158d09af7b1e9b3 [file] [log] [blame]
extern int printf (const char *__restrict __format, ...);
typedef long int __time_t;
typedef long int __suseconds_t;
struct timeval
{
__time_t tv_sec;
__suseconds_t tv_usec;
};
struct timezone
{
int tz_minuteswest;
int tz_dsttime;
};
typedef struct timezone *__restrict __timezone_ptr_t;
extern int gettimeofday (struct timeval *__restrict __tv,
__timezone_ptr_t __tz) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
typedef long int __jmp_buf[8];
typedef struct
{
unsigned long int __val[(1024 / (8 * sizeof (unsigned long int)))];
} __sigset_t;
struct __jmp_buf_tag
{
__jmp_buf __jmpbuf;
int __mask_was_saved;
__sigset_t __saved_mask;
};
typedef struct __jmp_buf_tag jmp_buf[1];
extern int setjmp (jmp_buf __env) __attribute__ ((__nothrow__));
extern void longjmp (struct __jmp_buf_tag __env[1], int __val)
__attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
extern int bar (void);
int __attribute__ ((noinline, noclone))
get_input (void)
{
return 0;
}
static jmp_buf buf;
int foo (void)
{
if (get_input ())
longjmp(buf, 1);
return 0;
}
volatile int z;
int main (void)
{
struct timeval tv;
struct timezone tz;
bar();
if (setjmp (buf))
return 1;
if (!get_input ())
{
gettimeofday (&tv, &tz);
z = 0;
printf ("This is from main %i\n", tz.tz_dsttime);
}
foo ();
bar ();
bar ();
return 0;
}