diff options
Diffstat (limited to 'packages/Python/lldbsuite/test/functionalities/unwind/noreturn/main.c')
-rw-r--r-- | packages/Python/lldbsuite/test/functionalities/unwind/noreturn/main.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/packages/Python/lldbsuite/test/functionalities/unwind/noreturn/main.c b/packages/Python/lldbsuite/test/functionalities/unwind/noreturn/main.c new file mode 100644 index 000000000000..7190e38f5d8c --- /dev/null +++ b/packages/Python/lldbsuite/test/functionalities/unwind/noreturn/main.c @@ -0,0 +1,37 @@ +#include <stdio.h> +#include <stdlib.h> +#include <unistd.h> + +static void func_a (void) __attribute__((noinline)); +static void func_b (void) __attribute__((noreturn)); +static void func_c (void) __attribute__((noinline)); + +static void +func_c (void) +{ + abort (); +} + +static void +func_b (void) +{ + func_c (); + while (1) + ; +} + +static void +func_a (void) +{ + func_b (); +} + +int +main (int argc, char *argv[]) +{ + sleep (2); + + func_a (); + + return 0; +} |