diff options
author | Berker Peksag <berker.peksag@gmail.com> | 2017-02-01 22:38:12 +0300 |
---|---|---|
committer | Berker Peksag <berker.peksag@gmail.com> | 2017-02-01 22:38:12 +0300 |
commit | b64c0079822007c7846e7d3eb6e6f6b5d82d3a03 (patch) | |
tree | 61860585c5d1c1e62275cdc449be5d7494c143b8 /Modules/_ctypes/libffi/testsuite/libffi.call/unwindtest_ffi_call.cc | |
parent | a706118dafc16edfed490c53db02c08aefe7b097 (diff) | |
parent | 0e4701169a3e3a022f03997399d04d28ca90c620 (diff) | |
download | cpython-b64c0079822007c7846e7d3eb6e6f6b5d82d3a03.tar.gz |
Issue #29407: Merge from 3.6
Diffstat (limited to 'Modules/_ctypes/libffi/testsuite/libffi.call/unwindtest_ffi_call.cc')
-rw-r--r-- | Modules/_ctypes/libffi/testsuite/libffi.call/unwindtest_ffi_call.cc | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/Modules/_ctypes/libffi/testsuite/libffi.call/unwindtest_ffi_call.cc b/Modules/_ctypes/libffi/testsuite/libffi.call/unwindtest_ffi_call.cc deleted file mode 100644 index ec611647e3..0000000000 --- a/Modules/_ctypes/libffi/testsuite/libffi.call/unwindtest_ffi_call.cc +++ /dev/null @@ -1,54 +0,0 @@ -/* Area: ffi_call, unwind info - Purpose: Check if the unwind information is passed correctly. - Limitations: none. - PR: none. - Originator: Andreas Tobler <andreast@gcc.gnu.org> 20061213 */ - -/* { dg-do run } */ - -#include "ffitest.h" - -static int checking(int a __UNUSED__, short b __UNUSED__, - signed char c __UNUSED__) -{ - throw 9; -} - -int main (void) -{ - ffi_cif cif; - ffi_type *args[MAX_ARGS]; - void *values[MAX_ARGS]; - ffi_arg rint; - - signed int si; - signed short ss; - signed char sc; - - args[0] = &ffi_type_sint; - values[0] = &si; - args[1] = &ffi_type_sshort; - values[1] = &ss; - args[2] = &ffi_type_schar; - values[2] = ≻ - - /* Initialize the cif */ - CHECK(ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 3, - &ffi_type_sint, args) == FFI_OK); - - si = -6; - ss = -12; - sc = -1; - { - try - { - ffi_call(&cif, FFI_FN(checking), &rint, values); - } catch (int exception_code) - { - CHECK(exception_code == 9); - } - printf("part one OK\n"); - /* { dg-output "part one OK" } */ - } - exit(0); -} |