summaryrefslogtreecommitdiff
path: root/Modules/_ctypes/libffi/testsuite/libffi.call/cls_uchar.c
diff options
context:
space:
mode:
authorVinay Sajip <vinay_sajip@yahoo.co.uk>2017-01-27 13:05:09 +0000
committerVinay Sajip <vinay_sajip@yahoo.co.uk>2017-01-27 13:05:09 +0000
commitd45d8652710e51576367db00b226b8465e6c5ce6 (patch)
treeeeb12605abc98507852e82848382c2e739991708 /Modules/_ctypes/libffi/testsuite/libffi.call/cls_uchar.c
parent6ccbbb38caa79f9eb9b93b5767f3787fc80cbac1 (diff)
parentbbbab3c96168cea9f872f90da0a385b50f62ca70 (diff)
downloadcpython-d45d8652710e51576367db00b226b8465e6c5ce6.tar.gz
Closes #28784: Merged update from 3.6.
Diffstat (limited to 'Modules/_ctypes/libffi/testsuite/libffi.call/cls_uchar.c')
-rw-r--r--Modules/_ctypes/libffi/testsuite/libffi.call/cls_uchar.c42
1 files changed, 0 insertions, 42 deletions
diff --git a/Modules/_ctypes/libffi/testsuite/libffi.call/cls_uchar.c b/Modules/_ctypes/libffi/testsuite/libffi.call/cls_uchar.c
deleted file mode 100644
index c1317e795f..0000000000
--- a/Modules/_ctypes/libffi/testsuite/libffi.call/cls_uchar.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Area: closure_call
- Purpose: Check return value uchar.
- Limitations: none.
- PR: none.
- Originator: <andreast@gcc.gnu.org> 20030828 */
-
-/* { dg-do run } */
-#include "ffitest.h"
-
-static void cls_ret_uchar_fn(ffi_cif* cif __UNUSED__, void* resp, void** args,
- void* userdata __UNUSED__)
-{
- *(ffi_arg*)resp = *(unsigned char *)args[0];
- printf("%d: %d\n",*(unsigned char *)args[0],
- (int)*(ffi_arg *)(resp));
-}
-typedef unsigned char (*cls_ret_uchar)(unsigned char);
-
-int main (void)
-{
- ffi_cif cif;
- void *code;
- ffi_closure *pcl = ffi_closure_alloc(sizeof(ffi_closure), &code);
- ffi_type * cl_arg_types[2];
- unsigned char res;
-
- cl_arg_types[0] = &ffi_type_uchar;
- cl_arg_types[1] = NULL;
-
- /* Initialize the cif */
- CHECK(ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 1,
- &ffi_type_uchar, cl_arg_types) == FFI_OK);
-
- CHECK(ffi_prep_closure_loc(pcl, &cif, cls_ret_uchar_fn, NULL, code) == FFI_OK);
-
- res = (*((cls_ret_uchar)code))(127);
- /* { dg-output "127: 127" } */
- printf("res: %d\n",res);
- /* { dg-output "\nres: 127" } */
-
- exit(0);
-}