ffi 1.9.18-x86-mingw32 → 1.9.21-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of ffi might be problematic. Click here for more details.
- checksums.yaml +5 -5
- data/README.md +3 -2
- data/Rakefile +14 -4
- data/ext/ffi_c/AbstractMemory.c +6 -1
- data/ext/ffi_c/Platform.c +10 -2
- data/ext/ffi_c/extconf.rb +7 -2
- data/ext/ffi_c/libffi.bsd.mk +9 -3
- data/ext/ffi_c/libffi.darwin.mk +14 -4
- data/ext/ffi_c/libffi.gnu.mk +2 -1
- data/ext/ffi_c/libffi.mk +9 -4
- data/ext/ffi_c/libffi/ChangeLog.libffi +2 -2
- data/ext/ffi_c/libffi/{ChangeLog → ChangeLog.libffi-3.1} +1402 -2
- data/ext/ffi_c/libffi/ChangeLog.v1 +1 -1
- data/ext/ffi_c/libffi/LICENSE +1 -1
- data/ext/ffi_c/libffi/Makefile.am +166 -157
- data/ext/ffi_c/libffi/Makefile.in +923 -938
- data/ext/ffi_c/libffi/README +164 -52
- data/ext/ffi_c/libffi/acinclude.m4 +381 -0
- data/ext/ffi_c/libffi/aclocal.m4 +645 -384
- data/ext/ffi_c/libffi/autogen.sh +2 -0
- data/ext/ffi_c/libffi/autom4te.cache/output.0 +21972 -0
- data/ext/ffi_c/libffi/autom4te.cache/output.1 +21972 -0
- data/ext/ffi_c/libffi/autom4te.cache/output.2 +21972 -0
- data/ext/ffi_c/libffi/autom4te.cache/output.3 +21972 -0
- data/ext/ffi_c/libffi/autom4te.cache/requests +331 -0
- data/ext/ffi_c/libffi/autom4te.cache/traces.0 +4010 -0
- data/ext/ffi_c/libffi/autom4te.cache/traces.1 +1005 -0
- data/ext/ffi_c/libffi/autom4te.cache/traces.2 +4010 -0
- data/ext/ffi_c/libffi/autom4te.cache/traces.3 +4010 -0
- data/ext/ffi_c/libffi/compile +218 -14
- data/ext/ffi_c/libffi/config.guess +329 -368
- data/ext/ffi_c/libffi/config.sub +232 -112
- data/ext/ffi_c/libffi/configure +6970 -2189
- data/ext/ffi_c/libffi/configure.ac +148 -256
- data/ext/ffi_c/libffi/configure.host +265 -4
- data/ext/ffi_c/libffi/depcomp +346 -185
- data/ext/ffi_c/libffi/doc/Makefile.am +3 -0
- data/ext/ffi_c/libffi/doc/Makefile.in +811 -0
- data/ext/ffi_c/libffi/doc/libffi.texi +430 -45
- data/ext/ffi_c/libffi/{mdate-sh → doc/mdate-sh} +40 -13
- data/ext/ffi_c/libffi/{texinfo.tex → doc/texinfo.tex} +3990 -1121
- data/ext/ffi_c/libffi/doc/version.texi +4 -4
- data/ext/ffi_c/libffi/fficonfig.h.in +24 -13
- data/ext/ffi_c/libffi/fficonfig.h.in~ +210 -0
- data/ext/ffi_c/libffi/generate-darwin-source-and-headers.py +207 -0
- data/ext/ffi_c/libffi/include/Makefile.am +3 -3
- data/ext/ffi_c/libffi/include/Makefile.in +188 -71
- data/ext/ffi_c/libffi/include/ffi.h.in +107 -50
- data/ext/ffi_c/libffi/include/ffi_cfi.h +55 -0
- data/ext/ffi_c/libffi/include/ffi_common.h +32 -11
- data/ext/ffi_c/libffi/install-sh +190 -202
- data/ext/ffi_c/libffi/libffi.map.in +80 -0
- data/ext/ffi_c/libffi/libffi.pc.in +3 -2
- data/ext/ffi_c/libffi/libffi.xcodeproj/project.pbxproj +637 -0
- data/ext/ffi_c/libffi/libtool-ldflags +106 -0
- data/ext/ffi_c/libffi/libtool-version +1 -1
- data/ext/ffi_c/libffi/ltmain.sh +3553 -2033
- data/ext/ffi_c/libffi/m4/asmcfi.m4 +13 -0
- data/ext/ffi_c/libffi/m4/ax_append_flag.m4 +69 -0
- data/ext/ffi_c/libffi/m4/ax_cc_maxopt.m4 +13 -8
- data/ext/ffi_c/libffi/m4/ax_cflags_warn_all.m4 +31 -104
- data/ext/ffi_c/libffi/m4/{ax_check_compiler_flags.m4 → ax_check_compile_flag.m4} +30 -34
- data/ext/ffi_c/libffi/m4/ax_compiler_vendor.m4 +32 -11
- data/ext/ffi_c/libffi/m4/ax_enable_builddir.m4 +6 -5
- data/ext/ffi_c/libffi/m4/ax_gcc_archflag.m4 +31 -21
- data/ext/ffi_c/libffi/m4/libtool.m4 +1691 -1135
- data/ext/ffi_c/libffi/m4/ltoptions.m4 +104 -36
- data/ext/ffi_c/libffi/m4/ltsugar.m4 +4 -3
- data/ext/ffi_c/libffi/m4/ltversion.m4 +6 -6
- data/ext/ffi_c/libffi/m4/lt~obsolete.m4 +4 -3
- data/ext/ffi_c/libffi/man/Makefile.am +2 -2
- data/ext/ffi_c/libffi/man/Makefile.in +141 -49
- data/ext/ffi_c/libffi/man/ffi.3 +10 -0
- data/ext/ffi_c/libffi/man/ffi_prep_cif.3 +6 -4
- data/ext/ffi_c/libffi/man/ffi_prep_cif_var.3 +73 -0
- data/ext/ffi_c/libffi/missing +150 -311
- data/ext/ffi_c/libffi/msvcc.sh +72 -9
- data/ext/ffi_c/libffi/src/aarch64/ffi.c +941 -0
- data/ext/ffi_c/libffi/src/aarch64/ffitarget.h +81 -0
- data/ext/ffi_c/libffi/src/aarch64/internal.h +67 -0
- data/ext/ffi_c/libffi/src/aarch64/sysv.S +438 -0
- data/ext/ffi_c/libffi/src/alpha/ffi.c +335 -98
- data/ext/ffi_c/libffi/src/alpha/ffitarget.h +10 -1
- data/ext/ffi_c/libffi/src/alpha/internal.h +23 -0
- data/ext/ffi_c/libffi/src/alpha/osf.S +161 -266
- data/ext/ffi_c/libffi/src/arc/arcompact.S +135 -0
- data/ext/ffi_c/libffi/src/arc/ffi.c +266 -0
- data/ext/ffi_c/libffi/src/arc/ffitarget.h +53 -0
- data/ext/ffi_c/libffi/src/arm/ffi.c +597 -517
- data/ext/ffi_c/libffi/src/arm/ffitarget.h +24 -7
- data/ext/ffi_c/libffi/src/arm/internal.h +7 -0
- data/ext/ffi_c/libffi/src/arm/sysv.S +303 -417
- data/ext/ffi_c/libffi/src/avr32/ffitarget.h +6 -1
- data/ext/ffi_c/libffi/src/bfin/ffi.c +196 -0
- data/ext/ffi_c/libffi/src/bfin/ffitarget.h +43 -0
- data/ext/ffi_c/libffi/src/bfin/sysv.S +179 -0
- data/ext/ffi_c/libffi/src/closures.c +319 -44
- data/ext/ffi_c/libffi/src/cris/ffi.c +10 -7
- data/ext/ffi_c/libffi/src/cris/ffitarget.h +6 -1
- data/ext/ffi_c/libffi/src/debug.c +6 -1
- data/ext/ffi_c/libffi/src/dlmalloc.c +16 -11
- data/ext/ffi_c/libffi/src/frv/ffi.c +1 -1
- data/ext/ffi_c/libffi/src/frv/ffitarget.h +6 -1
- data/ext/ffi_c/libffi/src/ia64/ffi.c +11 -7
- data/ext/ffi_c/libffi/src/ia64/ffitarget.h +6 -1
- data/ext/ffi_c/libffi/src/java_raw_api.c +23 -5
- data/ext/ffi_c/libffi/src/m32r/ffi.c +1 -1
- data/ext/ffi_c/libffi/src/m32r/ffitarget.h +6 -1
- data/ext/ffi_c/libffi/src/m68k/ffi.c +87 -13
- data/ext/ffi_c/libffi/src/m68k/ffitarget.h +6 -1
- data/ext/ffi_c/libffi/src/m68k/sysv.S +119 -32
- data/ext/ffi_c/libffi/src/m88k/ffi.c +400 -0
- data/ext/ffi_c/libffi/src/m88k/ffitarget.h +49 -0
- data/ext/ffi_c/libffi/src/m88k/obsd.S +209 -0
- data/ext/ffi_c/libffi/src/metag/ffi.c +330 -0
- data/ext/ffi_c/libffi/{fficonfig.hw → src/metag/ffitarget.h} +22 -26
- data/ext/ffi_c/libffi/src/metag/sysv.S +311 -0
- data/ext/ffi_c/libffi/src/microblaze/ffi.c +321 -0
- data/ext/ffi_c/libffi/src/microblaze/ffitarget.h +53 -0
- data/ext/ffi_c/libffi/src/microblaze/sysv.S +302 -0
- data/ext/ffi_c/libffi/src/mips/ffi.c +95 -28
- data/ext/ffi_c/libffi/src/mips/ffitarget.h +9 -2
- data/ext/ffi_c/libffi/src/mips/n32.S +126 -56
- data/ext/ffi_c/libffi/src/mips/o32.S +148 -27
- data/ext/ffi_c/libffi/src/moxie/eabi.S +55 -82
- data/ext/ffi_c/libffi/src/moxie/ffi.c +40 -44
- data/ext/ffi_c/libffi/src/moxie/ffitarget.h +52 -0
- data/ext/ffi_c/libffi/src/nios2/ffi.c +304 -0
- data/ext/ffi_c/libffi/src/nios2/ffitarget.h +52 -0
- data/ext/ffi_c/libffi/src/nios2/sysv.S +136 -0
- data/ext/ffi_c/libffi/src/or1k/ffi.c +328 -0
- data/ext/ffi_c/libffi/src/or1k/ffitarget.h +58 -0
- data/ext/ffi_c/libffi/src/or1k/sysv.S +107 -0
- data/ext/ffi_c/libffi/src/pa/ffitarget.h +8 -1
- data/ext/ffi_c/libffi/src/powerpc/aix.S +6 -6
- data/ext/ffi_c/libffi/src/powerpc/aix_closure.S +3 -1
- data/ext/ffi_c/libffi/src/powerpc/asm.h +2 -2
- data/ext/ffi_c/libffi/src/powerpc/darwin.S +2 -7
- data/ext/ffi_c/libffi/src/powerpc/darwin_closure.S +22 -26
- data/ext/ffi_c/libffi/src/powerpc/ffi.c +103 -1378
- data/ext/ffi_c/libffi/src/powerpc/ffi_darwin.c +25 -25
- data/ext/ffi_c/libffi/src/powerpc/ffi_linux64.c +945 -0
- data/ext/ffi_c/libffi/src/powerpc/ffi_powerpc.h +94 -0
- data/ext/ffi_c/libffi/src/powerpc/ffi_sysv.c +923 -0
- data/ext/ffi_c/libffi/src/powerpc/ffitarget.h +100 -44
- data/ext/ffi_c/libffi/src/powerpc/linux64.S +100 -59
- data/ext/ffi_c/libffi/src/powerpc/linux64_closure.S +360 -108
- data/ext/ffi_c/libffi/src/powerpc/ppc_closure.S +138 -68
- data/ext/ffi_c/libffi/src/powerpc/sysv.S +68 -112
- data/ext/ffi_c/libffi/src/prep_cif.c +108 -24
- data/ext/ffi_c/libffi/src/raw_api.c +18 -5
- data/ext/ffi_c/libffi/src/s390/ffi.c +294 -318
- data/ext/ffi_c/libffi/src/s390/ffitarget.h +9 -1
- data/ext/ffi_c/libffi/src/s390/internal.h +11 -0
- data/ext/ffi_c/libffi/src/s390/sysv.S +257 -366
- data/ext/ffi_c/libffi/src/sh/ffi.c +4 -3
- data/ext/ffi_c/libffi/src/sh/ffitarget.h +6 -1
- data/ext/ffi_c/libffi/src/sh64/ffi.c +3 -2
- data/ext/ffi_c/libffi/src/sh64/ffitarget.h +6 -1
- data/ext/ffi_c/libffi/src/sparc/ffi.c +326 -527
- data/ext/ffi_c/libffi/src/sparc/ffi64.c +608 -0
- data/ext/ffi_c/libffi/src/sparc/ffitarget.h +20 -7
- data/ext/ffi_c/libffi/src/sparc/internal.h +26 -0
- data/ext/ffi_c/libffi/src/sparc/v8.S +364 -234
- data/ext/ffi_c/libffi/src/sparc/v9.S +340 -207
- data/ext/ffi_c/libffi/src/tile/ffi.c +355 -0
- data/ext/ffi_c/libffi/src/tile/ffitarget.h +65 -0
- data/ext/ffi_c/libffi/src/tile/tile.S +360 -0
- data/ext/ffi_c/libffi/src/types.c +43 -14
- data/ext/ffi_c/libffi/src/vax/elfbsd.S +195 -0
- data/ext/ffi_c/libffi/src/vax/ffi.c +276 -0
- data/ext/ffi_c/libffi/src/vax/ffitarget.h +49 -0
- data/ext/ffi_c/libffi/src/x86/asmnames.h +30 -0
- data/ext/ffi_c/libffi/src/x86/ffi.c +589 -500
- data/ext/ffi_c/libffi/src/x86/ffi64.c +338 -116
- data/ext/ffi_c/libffi/src/x86/ffitarget.h +55 -35
- data/ext/ffi_c/libffi/src/x86/ffiw64.c +287 -0
- data/ext/ffi_c/libffi/src/x86/internal.h +29 -0
- data/ext/ffi_c/libffi/src/x86/internal64.h +22 -0
- data/ext/ffi_c/libffi/src/x86/sysv.S +975 -400
- data/ext/ffi_c/libffi/src/x86/unix64.S +398 -299
- data/ext/ffi_c/libffi/src/x86/win64.S +222 -458
- data/ext/ffi_c/libffi/src/x86/win64_intel.S +237 -0
- data/ext/ffi_c/libffi/src/xtensa/ffi.c +298 -0
- data/ext/ffi_c/libffi/src/xtensa/ffitarget.h +53 -0
- data/ext/ffi_c/libffi/src/xtensa/sysv.S +253 -0
- data/ext/ffi_c/libffi/stamp-h.in +1 -0
- data/ext/ffi_c/libffi/testsuite/Makefile.am +78 -73
- data/ext/ffi_c/libffi/testsuite/Makefile.in +218 -111
- data/ext/ffi_c/libffi/testsuite/lib/libffi.exp +120 -25
- data/ext/ffi_c/libffi/testsuite/lib/target-libpath.exp +21 -1
- data/ext/ffi_c/libffi/testsuite/libffi.call/align_mixed.c +46 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/call.exp +4 -6
- data/ext/ffi_c/libffi/testsuite/libffi.call/{closure_stdcall.c → closure_simple.c} +7 -16
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_12byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_16byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_18byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_19byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_1_1byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte1.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_24byte.c +5 -5
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_2byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_3_1byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte1.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte2.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_4_1byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_4byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_5_1_byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_5byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_64byte.c +5 -5
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_6_1_byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_6byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_7_1_byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_7byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_8byte.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte1.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte2.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_double.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_float.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble_split.c +4 -6
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble_split2.c +4 -6
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_pointer.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint16.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint32.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint64.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint16.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint32.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint64.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_dbls_struct.c +4 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_double_va.c +10 -9
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble.c +3 -3
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble_va.c +10 -9
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_many_mixed_args.c +70 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_many_mixed_float_double.c +55 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_pointer.c +1 -1
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_pointer_stack.c +11 -9
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_struct_va1.c +114 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar_va.c +44 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_uint_va.c +45 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_ulong_va.c +45 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_ulonglong.c +5 -5
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort_va.c +44 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_typedef.c +2 -2
- data/ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h +23 -40
- data/ext/ffi_c/libffi/testsuite/libffi.call/float1.c +3 -1
- data/ext/ffi_c/libffi/testsuite/libffi.call/float2.c +6 -4
- data/ext/ffi_c/libffi/testsuite/libffi.call/float3.c +4 -2
- data/ext/ffi_c/libffi/testsuite/libffi.call/float_va.c +107 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/huge_struct.c +18 -19
- data/ext/ffi_c/libffi/testsuite/libffi.call/many.c +6 -16
- data/ext/ffi_c/libffi/testsuite/libffi.call/many2.c +57 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/many_double.c +70 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/many_mixed.c +78 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/negint.c +0 -1
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct.c +6 -6
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct1.c +8 -8
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct10.c +6 -6
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct11.c +121 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct2.c +5 -5
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct3.c +5 -5
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct4.c +5 -5
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct5.c +5 -5
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct6.c +6 -6
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct7.c +5 -5
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct8.c +6 -6
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct9.c +6 -6
- data/ext/ffi_c/libffi/testsuite/libffi.call/offsets.c +46 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/pr1172638.c +127 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl.c +1 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_ldl.c +1 -1
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_sc.c +1 -1
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_uc.c +1 -1
- data/ext/ffi_c/libffi/testsuite/libffi.call/stret_large.c +7 -7
- data/ext/ffi_c/libffi/testsuite/libffi.call/stret_large2.c +7 -7
- data/ext/ffi_c/libffi/testsuite/libffi.call/stret_medium.c +5 -5
- data/ext/ffi_c/libffi/testsuite/libffi.call/stret_medium2.c +5 -5
- data/ext/ffi_c/libffi/testsuite/libffi.call/strlen.c +2 -2
- data/ext/ffi_c/libffi/testsuite/libffi.call/strlen2.c +49 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/strlen3.c +49 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/strlen4.c +55 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct1.c +9 -7
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct2.c +7 -7
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct3.c +7 -6
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct4.c +9 -8
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct5.c +9 -8
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct6.c +9 -9
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct7.c +9 -9
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct8.c +9 -8
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct9.c +9 -8
- data/ext/ffi_c/libffi/testsuite/libffi.call/testclosure.c +2 -2
- data/ext/ffi_c/libffi/testsuite/libffi.call/uninitialized.c +61 -0
- data/ext/ffi_c/libffi/testsuite/{libffi.special → libffi.call}/unwindtest.cc +3 -10
- data/ext/ffi_c/libffi/testsuite/{libffi.special → libffi.call}/unwindtest_ffi_call.cc +2 -1
- data/ext/ffi_c/libffi/testsuite/libffi.call/va_1.c +196 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/va_struct1.c +121 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/va_struct2.c +123 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/va_struct3.c +125 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex.inc +91 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_double.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_float.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_longdouble.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex.inc +42 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_double.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_float.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_longdouble.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct.inc +71 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_double.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_float.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_longdouble.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va.inc +80 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_double.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_float.c +16 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_longdouble.c +10 -0
- data/ext/ffi_c/libffi/testsuite/{libffi.special/special.exp → libffi.complex/complex.exp} +9 -8
- data/ext/ffi_c/libffi/testsuite/libffi.complex/complex.inc +51 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_double.inc +7 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_float.inc +7 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_longdouble.inc +7 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/complex_double.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/complex_float.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/complex_int.c +86 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/complex_longdouble.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/ffitest.h +1 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex.inc +78 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_double.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_float.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_longdouble.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex.inc +37 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1.inc +41 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_double.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_float.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_longdouble.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2.inc +44 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_double.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_float.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_longdouble.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_double.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_float.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_longdouble.c +10 -0
- data/ext/ffi_c/libffi/testsuite/libffi.go/aa-direct.c +34 -0
- data/ext/ffi_c/libffi/testsuite/libffi.go/closure1.c +28 -0
- data/ext/ffi_c/libffi/testsuite/libffi.go/ffitest.h +1 -0
- data/ext/ffi_c/libffi/testsuite/libffi.go/go.exp +36 -0
- data/ext/ffi_c/libffi/testsuite/libffi.go/static-chain.h +19 -0
- data/ffi.gemspec +2 -2
- data/lib/2.0/ffi_c.so +0 -0
- data/lib/2.1/ffi_c.so +0 -0
- data/lib/2.2/ffi_c.so +0 -0
- data/lib/2.3/ffi_c.so +0 -0
- data/lib/2.4/ffi_c.so +0 -0
- data/lib/2.5/ffi_c.so +0 -0
- data/lib/ffi/enum.rb +124 -0
- data/lib/ffi/library.rb +65 -13
- data/lib/ffi/platform.rb +7 -2
- data/lib/ffi/platform/sparc64-linux/types.conf +102 -0
- data/lib/ffi/platform/x86_64-windows/types.conf +113 -20
- data/lib/ffi/pointer.rb +1 -0
- data/lib/ffi/struct.rb +0 -2
- data/lib/ffi/version.rb +1 -1
- data/spec/ffi/bitmask_spec.rb +575 -0
- data/spec/ffi/embed-test/ext/Makefile +242 -0
- data/spec/ffi/fixtures/BitmaskTest.c +51 -0
- data/spec/ffi/rbx/memory_pointer_spec.rb +4 -0
- data/spec/ffi/struct_spec.rb +0 -4
- metadata +158 -32
- data/ext/ffi_c/libffi/Makefile.vc +0 -141
- data/ext/ffi_c/libffi/Makefile.vc64 +0 -141
- data/ext/ffi_c/libffi/build-ios.sh +0 -67
- data/ext/ffi_c/libffi/doc/libffi.info +0 -593
- data/ext/ffi_c/libffi/doc/stamp-vti +0 -4
- data/ext/ffi_c/libffi/include/ffi.h.vc +0 -427
- data/ext/ffi_c/libffi/include/ffi.h.vc64 +0 -427
- data/ext/ffi_c/libffi/src/arm/gentramp.sh +0 -118
- data/ext/ffi_c/libffi/src/arm/trampoline.S +0 -4450
- data/ext/ffi_c/libffi/src/x86/darwin.S +0 -444
- data/ext/ffi_c/libffi/src/x86/darwin64.S +0 -416
- data/ext/ffi_c/libffi/src/x86/freebsd.S +0 -458
- data/ext/ffi_c/libffi/src/x86/win32.S +0 -1065
- data/ext/ffi_c/libffi/testsuite/lib/libffi-dg.exp +0 -300
- data/ext/ffi_c/libffi/testsuite/libffi.call/many_win32.c +0 -63
- data/ext/ffi_c/libffi/testsuite/libffi.call/strlen_win32.c +0 -44
- data/ext/ffi_c/libffi/testsuite/libffi.special/ffitestcxx.h +0 -96
@@ -0,0 +1,242 @@
|
|
1
|
+
|
2
|
+
SHELL = /bin/sh
|
3
|
+
|
4
|
+
# V=0 quiet, V=1 verbose. other values don't work.
|
5
|
+
V = 0
|
6
|
+
Q1 = $(V:1=)
|
7
|
+
Q = $(Q1:0=@)
|
8
|
+
ECHO1 = $(V:1=@:)
|
9
|
+
ECHO = $(ECHO1:0=@echo)
|
10
|
+
NULLCMD = :
|
11
|
+
|
12
|
+
#### Start of system configuration section. ####
|
13
|
+
|
14
|
+
srcdir = .
|
15
|
+
topdir = /home/lars/.rvm/rubies/rbx-3.83/machine/include/capi
|
16
|
+
hdrdir = $(topdir)
|
17
|
+
arch_hdrdir = /home/lars/.rvm/rubies/rbx-3.83/machine/include/capi
|
18
|
+
PATH_SEPARATOR = :
|
19
|
+
VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby
|
20
|
+
prefix = $(DESTDIR)/home/lars/.rvm/rubies/rbx-3.83
|
21
|
+
install_prefix = $(DESTDIR)
|
22
|
+
exec_prefix = $(prefix)
|
23
|
+
bindir = $(DESTDIR)/home/lars/.rvm/rubies/rbx-3.83/bin
|
24
|
+
sbindir = $(exec_prefix)/sbin
|
25
|
+
libexecdir = $(exec_prefix)/libexec
|
26
|
+
datarootdir = $(prefix)/share
|
27
|
+
datadir = $(datarootdir)
|
28
|
+
sysconfdir = $(prefix)/etc
|
29
|
+
sharedstatedir = $(prefix)/com
|
30
|
+
localstatedir = $(prefix)/var
|
31
|
+
includedir = $(prefix)/include
|
32
|
+
oldincludedir = $(DESTDIR)/usr/include
|
33
|
+
docdir = $(datarootdir)/doc/$(PACKAGE)
|
34
|
+
infodir = $(datarootdir)/info
|
35
|
+
htmldir = $(docdir)
|
36
|
+
dvidir = $(docdir)
|
37
|
+
pdfdir = $(docdir)
|
38
|
+
psdir = $(docdir)
|
39
|
+
libdir = $(exec_prefix)/lib
|
40
|
+
localedir = $(datarootdir)/locale
|
41
|
+
mandir = $(datarootdir)/man
|
42
|
+
rubyhdrdir = $(DESTDIR)/home/lars/.rvm/rubies/rbx-3.83/machine/include/capi
|
43
|
+
sitedir = $(DESTDIR)/home/lars/.rvm/rubies/rbx-3.83/site
|
44
|
+
sitelibdir = $(DESTDIR)/home/lars/.rvm/rubies/rbx-3.83/site
|
45
|
+
rubylibdir = $(DESTDIR)/home/lars/.rvm/rubies/rbx-3.83/site
|
46
|
+
archdir = $(DESTDIR)/home/lars/.rvm/rubies/rbx-3.83/site/x86_64-linux-gnu
|
47
|
+
sitearchdir = $(DESTDIR)/home/lars/.rvm/rubies/rbx-3.83/site/x86_64-linux-gnu
|
48
|
+
rubyarchhdrdir = $(DESTDIR)/home/lars/.rvm/rubies/rbx-3.83/machine/include/capi
|
49
|
+
|
50
|
+
|
51
|
+
CC = cc
|
52
|
+
CXX = c++
|
53
|
+
LIBRUBY = $(LIBRUBY_SO)
|
54
|
+
LIBRUBY_A =
|
55
|
+
LIBRUBYARG_SHARED =
|
56
|
+
LIBRUBYARG_STATIC =
|
57
|
+
empty =
|
58
|
+
OUTFLAG = -o $(empty)
|
59
|
+
COUTFLAG = -o $(empty)
|
60
|
+
|
61
|
+
RUBY_EXTCONF_H =
|
62
|
+
cflags =
|
63
|
+
cxxflags =
|
64
|
+
optflags =
|
65
|
+
debugflags =
|
66
|
+
warnflags =
|
67
|
+
CCDLFLAGS = -fPIC
|
68
|
+
CFLAGS = $(CCDLFLAGS) -g -O2 -fPIC $(ARCH_FLAG)
|
69
|
+
INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
|
70
|
+
DEFS =
|
71
|
+
CPPFLAGS =
|
72
|
+
CXXFLAGS = $(CCDLFLAGS) -g -O2 -std=c++11 $(ARCH_FLAG)
|
73
|
+
ldflags = -Wl,--export-dynamic -lrt -lcrypt -ldl -lpthread -latomic
|
74
|
+
dldflags =
|
75
|
+
ARCH_FLAG =
|
76
|
+
DLDFLAGS = $(ldflags) $(dldflags) $(ARCH_FLAG)
|
77
|
+
LDSHARED = cc -shared
|
78
|
+
LDSHAREDXX = c++ -shared
|
79
|
+
AR = ar
|
80
|
+
EXEEXT =
|
81
|
+
|
82
|
+
RUBY_INSTALL_NAME = rbx
|
83
|
+
RUBY_SO_NAME = rubinius-3.83
|
84
|
+
RUBYW_INSTALL_NAME =
|
85
|
+
|
86
|
+
arch = x86_64-linux-gnu
|
87
|
+
sitearch = x86_64-linux-gnu
|
88
|
+
ruby_version = 2.3
|
89
|
+
ruby = $(bindir)/rbx
|
90
|
+
RUBY = $(ruby)
|
91
|
+
ruby_headers = $(hdrdir)/ruby.h $(hdrdir)/ruby/ruby.h $(hdrdir)/ruby/defines.h $(hdrdir)/ruby/missing.h $(hdrdir)/ruby/intern.h $(hdrdir)/ruby/st.h $(hdrdir)/ruby/subst.h $(arch_hdrdir)/ruby/config.h
|
92
|
+
|
93
|
+
RM = rm -f
|
94
|
+
RM_RF = $(RUBY) -run -e rm -- -rf
|
95
|
+
RMDIRS = $(RUBY) -run -e rmdir -- -p
|
96
|
+
MAKEDIRS = mkdir -p
|
97
|
+
INSTALL = install -c
|
98
|
+
INSTALL_PROG = $(INSTALL) -m 0755
|
99
|
+
INSTALL_DATA = $(INSTALL) -m 644
|
100
|
+
COPY = cp
|
101
|
+
TOUCH = exit >
|
102
|
+
|
103
|
+
#### End of system configuration section. ####
|
104
|
+
|
105
|
+
preload =
|
106
|
+
|
107
|
+
libpath = . $(libdir)
|
108
|
+
LIBPATH = -L. -L$(libdir) -Wl,-R$(libdir)
|
109
|
+
DEFFILE =
|
110
|
+
|
111
|
+
CLEANFILES = mkmf.log
|
112
|
+
DISTCLEANFILES =
|
113
|
+
DISTCLEANDIRS =
|
114
|
+
|
115
|
+
extout =
|
116
|
+
extout_prefix =
|
117
|
+
target_prefix =
|
118
|
+
LOCAL_LIBS =
|
119
|
+
LIBS = $(LIBRUBYARG_STATIC)
|
120
|
+
ORIG_SRCS = embed.c
|
121
|
+
SRCS = $(ORIG_SRCS)
|
122
|
+
OBJS = embed.o
|
123
|
+
HDRS =
|
124
|
+
TARGET = embed_test
|
125
|
+
TARGET_NAME = embed_test
|
126
|
+
TARGET_ENTRY = Init_$(TARGET_NAME)
|
127
|
+
DLLIB = $(TARGET).so
|
128
|
+
EXTSTATIC =
|
129
|
+
STATIC_LIB =
|
130
|
+
|
131
|
+
TIMESTAMP_DIR = .
|
132
|
+
BINDIR = $(bindir)
|
133
|
+
RUBYCOMMONDIR = $(sitedir)$(target_prefix)
|
134
|
+
RUBYLIBDIR = $(sitelibdir)$(target_prefix)
|
135
|
+
RUBYARCHDIR = $(sitearchdir)$(target_prefix)
|
136
|
+
HDRDIR = $(rubyhdrdir)/ruby$(target_prefix)
|
137
|
+
ARCHHDRDIR = $(rubyhdrdir)/$(arch)/ruby$(target_prefix)
|
138
|
+
|
139
|
+
TARGET_SO = $(DLLIB)
|
140
|
+
CLEANLIBS = $(TARGET).so
|
141
|
+
CLEANOBJS = *.o *.bak
|
142
|
+
|
143
|
+
all: $(DLLIB)
|
144
|
+
static: $(STATIC_LIB) install-rb
|
145
|
+
.PHONY: all install static install-so install-rb
|
146
|
+
.PHONY: clean clean-so clean-static clean-rb
|
147
|
+
|
148
|
+
clean-static::
|
149
|
+
clean-rb-default::
|
150
|
+
clean-rb::
|
151
|
+
clean-so::
|
152
|
+
clean: clean-so clean-static clean-rb-default clean-rb
|
153
|
+
-$(Q)$(RM) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES) .*.time
|
154
|
+
|
155
|
+
distclean-rb-default::
|
156
|
+
distclean-rb::
|
157
|
+
distclean-so::
|
158
|
+
distclean-static::
|
159
|
+
distclean: clean distclean-so distclean-static distclean-rb-default distclean-rb
|
160
|
+
-$(Q)$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log
|
161
|
+
-$(Q)$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES)
|
162
|
+
-$(Q)$(RMDIRS) $(DISTCLEANDIRS) 2> /dev/null || true
|
163
|
+
|
164
|
+
realclean: distclean
|
165
|
+
install: install-so install-rb
|
166
|
+
|
167
|
+
install-so: $(DLLIB) $(TIMESTAMP_DIR)/.RUBYARCHDIR.time
|
168
|
+
$(INSTALL_PROG) $(DLLIB) $(RUBYARCHDIR)
|
169
|
+
clean-static::
|
170
|
+
-$(Q)$(RM) $(STATIC_LIB)
|
171
|
+
install-rb: pre-install-rb install-rb-default
|
172
|
+
install-rb-default: pre-install-rb-default
|
173
|
+
pre-install-rb: Makefile
|
174
|
+
pre-install-rb-default: Makefile
|
175
|
+
pre-install-rb-default:
|
176
|
+
@$(NULLCMD)
|
177
|
+
$(TIMESTAMP_DIR)/.RUBYARCHDIR.time:
|
178
|
+
$(Q) $(MAKEDIRS) $(@D) $(RUBYARCHDIR)
|
179
|
+
$(Q) $(TOUCH) $@
|
180
|
+
|
181
|
+
site-install: site-install-so site-install-rb
|
182
|
+
site-install-so: install-so
|
183
|
+
site-install-rb: install-rb
|
184
|
+
|
185
|
+
.SUFFIXES: .c .m .cc .mm .cxx .cpp .o .S
|
186
|
+
|
187
|
+
.cc.o:
|
188
|
+
$(ECHO) compiling $(<)
|
189
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
|
190
|
+
|
191
|
+
.cc.S:
|
192
|
+
$(ECHO) translating $(<)
|
193
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $<
|
194
|
+
|
195
|
+
.mm.o:
|
196
|
+
$(ECHO) compiling $(<)
|
197
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
|
198
|
+
|
199
|
+
.mm.S:
|
200
|
+
$(ECHO) translating $(<)
|
201
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $<
|
202
|
+
|
203
|
+
.cxx.o:
|
204
|
+
$(ECHO) compiling $(<)
|
205
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
|
206
|
+
|
207
|
+
.cxx.S:
|
208
|
+
$(ECHO) translating $(<)
|
209
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $<
|
210
|
+
|
211
|
+
.cpp.o:
|
212
|
+
$(ECHO) compiling $(<)
|
213
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
|
214
|
+
|
215
|
+
.cpp.S:
|
216
|
+
$(ECHO) translating $(<)
|
217
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $<
|
218
|
+
|
219
|
+
.c.o:
|
220
|
+
$(ECHO) compiling $(<)
|
221
|
+
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $<
|
222
|
+
|
223
|
+
.c.S:
|
224
|
+
$(ECHO) translating $(<)
|
225
|
+
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -S $<
|
226
|
+
|
227
|
+
.m.o:
|
228
|
+
$(ECHO) compiling $(<)
|
229
|
+
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $<
|
230
|
+
|
231
|
+
.m.S:
|
232
|
+
$(ECHO) translating $(<)
|
233
|
+
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -S $<
|
234
|
+
|
235
|
+
$(DLLIB): $(OBJS) Makefile
|
236
|
+
$(ECHO) linking shared-object $(DLLIB)
|
237
|
+
-$(Q)$(RM) $(@)
|
238
|
+
$(Q) $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
|
239
|
+
|
240
|
+
|
241
|
+
|
242
|
+
$(OBJS): $(HDRS) $(ruby_headers)
|
@@ -0,0 +1,51 @@
|
|
1
|
+
/*
|
2
|
+
* Copyright (c) 2017 Brice Videau. All rights reserved.
|
3
|
+
*
|
4
|
+
* For licensing, see LICENSE.SPECS
|
5
|
+
*/
|
6
|
+
#include <stdint.h>
|
7
|
+
|
8
|
+
int test_untagged_bitmask(int val) {
|
9
|
+
return val;
|
10
|
+
}
|
11
|
+
|
12
|
+
int test_untagged_typedef_bitmask(int val) {
|
13
|
+
return val;
|
14
|
+
}
|
15
|
+
|
16
|
+
uint8_t test_untagged_nonint_bitmask(uint8_t val) {
|
17
|
+
return val;
|
18
|
+
}
|
19
|
+
|
20
|
+
uint16_t test_tagged_nonint_bitmask1(uint16_t val) {
|
21
|
+
return val;
|
22
|
+
}
|
23
|
+
|
24
|
+
uint32_t test_tagged_nonint_bitmask2(uint32_t val) {
|
25
|
+
return val;
|
26
|
+
}
|
27
|
+
|
28
|
+
uint64_t test_tagged_nonint_bitmask3(uint64_t val) {
|
29
|
+
return val;
|
30
|
+
}
|
31
|
+
|
32
|
+
typedef enum {c1 = (1<<0), c2 = (1<<1), c3 = (1<<2), c4 = (1<<3)} bitmask_type1;
|
33
|
+
int test_tagged_typedef_bitmask1(int val) {
|
34
|
+
return val;
|
35
|
+
}
|
36
|
+
|
37
|
+
typedef enum {c5 = (1<<2), c6 = (1<<3), c7 = (1<<4), c8 = (1<<5)} bitmask_type2;
|
38
|
+
int test_tagged_typedef_bitmask2(int val) {
|
39
|
+
return val;
|
40
|
+
}
|
41
|
+
|
42
|
+
typedef enum {c9 = (1<<2), c10 = (1<<3), c11 = (1<<5), c12 = (1<<6)} bitmask_type3;
|
43
|
+
int test_tagged_typedef_bitmask3(int val) {
|
44
|
+
return val;
|
45
|
+
}
|
46
|
+
|
47
|
+
typedef enum {c13 = (1<<2), c14 = (1<<4), c15 = (1<<6), c16 = (1<<8)} bitmask_type4;
|
48
|
+
int test_tagged_typedef_bitmask4(int val) {
|
49
|
+
return val;
|
50
|
+
}
|
51
|
+
|
@@ -34,6 +34,10 @@ describe "MemoryPointer" do
|
|
34
34
|
m = FFI::MemoryPointer.from_string("FFI is Awesome")
|
35
35
|
expect(m.read_string).to eq("FFI is Awesome")
|
36
36
|
end
|
37
|
+
|
38
|
+
it "reads back an empty string" do
|
39
|
+
expect(FFI::Pointer::NULL.read_string(0)).to eq('')
|
40
|
+
end
|
37
41
|
|
38
42
|
it "makes a pointer for a certain number of bytes" do
|
39
43
|
m = FFI::MemoryPointer.new(8)
|
data/spec/ffi/struct_spec.rb
CHANGED
@@ -7,7 +7,6 @@ require File.expand_path(File.join(File.dirname(__FILE__), "spec_helper"))
|
|
7
7
|
|
8
8
|
describe "Struct aligns fields correctly" do
|
9
9
|
it "char, followed by an int" do
|
10
|
-
pending("not supported in 1.8") if RUBY_VERSION =~ /^1\.8\..*/
|
11
10
|
class CIStruct < FFI::Struct
|
12
11
|
layout :c => :char, :i => :int
|
13
12
|
end
|
@@ -15,7 +14,6 @@ describe "Struct aligns fields correctly" do
|
|
15
14
|
end
|
16
15
|
|
17
16
|
it "short, followed by an int" do
|
18
|
-
pending("not supported in 1.8") if RUBY_VERSION =~ /^1\.8\..*/
|
19
17
|
class SIStruct < FFI::Struct
|
20
18
|
layout :s => :short, :i => :int
|
21
19
|
end
|
@@ -23,7 +21,6 @@ describe "Struct aligns fields correctly" do
|
|
23
21
|
end
|
24
22
|
|
25
23
|
it "int, followed by an int" do
|
26
|
-
pending("not supported in 1.8") if RUBY_VERSION =~ /^1\.8\..*/
|
27
24
|
class IIStruct < FFI::Struct
|
28
25
|
layout :i1 => :int, :i => :int
|
29
26
|
end
|
@@ -31,7 +28,6 @@ describe "Struct aligns fields correctly" do
|
|
31
28
|
end
|
32
29
|
|
33
30
|
it "long long, followed by an int" do
|
34
|
-
pending("not supported in 1.8") if RUBY_VERSION =~ /^1\.8\..*/
|
35
31
|
class LLIStruct < FFI::Struct
|
36
32
|
layout :l => :long_long, :i => :int
|
37
33
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ffi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.9.
|
4
|
+
version: 1.9.21
|
5
5
|
platform: x86-mingw32
|
6
6
|
authors:
|
7
7
|
- Wayne Meissner
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-02-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -44,14 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.6.
|
47
|
+
version: 0.6.2
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.6.
|
54
|
+
version: 0.6.2
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rspec
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -142,19 +142,26 @@ files:
|
|
142
142
|
- ext/ffi_c/libffi.mk
|
143
143
|
- ext/ffi_c/libffi.vc.mk
|
144
144
|
- ext/ffi_c/libffi.vc64.mk
|
145
|
-
- ext/ffi_c/libffi/ChangeLog
|
146
145
|
- ext/ffi_c/libffi/ChangeLog.libffi
|
146
|
+
- ext/ffi_c/libffi/ChangeLog.libffi-3.1
|
147
147
|
- ext/ffi_c/libffi/ChangeLog.libgcj
|
148
148
|
- ext/ffi_c/libffi/ChangeLog.v1
|
149
149
|
- ext/ffi_c/libffi/LICENSE
|
150
150
|
- ext/ffi_c/libffi/Makefile.am
|
151
151
|
- ext/ffi_c/libffi/Makefile.in
|
152
|
-
- ext/ffi_c/libffi/Makefile.vc
|
153
|
-
- ext/ffi_c/libffi/Makefile.vc64
|
154
152
|
- ext/ffi_c/libffi/README
|
155
153
|
- ext/ffi_c/libffi/acinclude.m4
|
156
154
|
- ext/ffi_c/libffi/aclocal.m4
|
157
|
-
- ext/ffi_c/libffi/
|
155
|
+
- ext/ffi_c/libffi/autogen.sh
|
156
|
+
- ext/ffi_c/libffi/autom4te.cache/output.0
|
157
|
+
- ext/ffi_c/libffi/autom4te.cache/output.1
|
158
|
+
- ext/ffi_c/libffi/autom4te.cache/output.2
|
159
|
+
- ext/ffi_c/libffi/autom4te.cache/output.3
|
160
|
+
- ext/ffi_c/libffi/autom4te.cache/requests
|
161
|
+
- ext/ffi_c/libffi/autom4te.cache/traces.0
|
162
|
+
- ext/ffi_c/libffi/autom4te.cache/traces.1
|
163
|
+
- ext/ffi_c/libffi/autom4te.cache/traces.2
|
164
|
+
- ext/ffi_c/libffi/autom4te.cache/traces.3
|
158
165
|
- ext/ffi_c/libffi/compile
|
159
166
|
- ext/ffi_c/libffi/config.guess
|
160
167
|
- ext/ffi_c/libffi/config.sub
|
@@ -162,25 +169,32 @@ files:
|
|
162
169
|
- ext/ffi_c/libffi/configure.ac
|
163
170
|
- ext/ffi_c/libffi/configure.host
|
164
171
|
- ext/ffi_c/libffi/depcomp
|
165
|
-
- ext/ffi_c/libffi/doc/
|
172
|
+
- ext/ffi_c/libffi/doc/Makefile.am
|
173
|
+
- ext/ffi_c/libffi/doc/Makefile.in
|
166
174
|
- ext/ffi_c/libffi/doc/libffi.texi
|
167
|
-
- ext/ffi_c/libffi/doc/
|
175
|
+
- ext/ffi_c/libffi/doc/mdate-sh
|
176
|
+
- ext/ffi_c/libffi/doc/texinfo.tex
|
168
177
|
- ext/ffi_c/libffi/doc/version.texi
|
169
178
|
- ext/ffi_c/libffi/fficonfig.h.in
|
170
|
-
- ext/ffi_c/libffi/fficonfig.
|
179
|
+
- ext/ffi_c/libffi/fficonfig.h.in~
|
180
|
+
- ext/ffi_c/libffi/generate-darwin-source-and-headers.py
|
171
181
|
- ext/ffi_c/libffi/include/Makefile.am
|
172
182
|
- ext/ffi_c/libffi/include/Makefile.in
|
173
183
|
- ext/ffi_c/libffi/include/ffi.h.in
|
174
|
-
- ext/ffi_c/libffi/include/
|
175
|
-
- ext/ffi_c/libffi/include/ffi.h.vc64
|
184
|
+
- ext/ffi_c/libffi/include/ffi_cfi.h
|
176
185
|
- ext/ffi_c/libffi/include/ffi_common.h
|
177
186
|
- ext/ffi_c/libffi/install-sh
|
187
|
+
- ext/ffi_c/libffi/libffi.map.in
|
178
188
|
- ext/ffi_c/libffi/libffi.pc.in
|
189
|
+
- ext/ffi_c/libffi/libffi.xcodeproj/project.pbxproj
|
190
|
+
- ext/ffi_c/libffi/libtool-ldflags
|
179
191
|
- ext/ffi_c/libffi/libtool-version
|
180
192
|
- ext/ffi_c/libffi/ltmain.sh
|
193
|
+
- ext/ffi_c/libffi/m4/asmcfi.m4
|
194
|
+
- ext/ffi_c/libffi/m4/ax_append_flag.m4
|
181
195
|
- ext/ffi_c/libffi/m4/ax_cc_maxopt.m4
|
182
196
|
- ext/ffi_c/libffi/m4/ax_cflags_warn_all.m4
|
183
|
-
- ext/ffi_c/libffi/m4/
|
197
|
+
- ext/ffi_c/libffi/m4/ax_check_compile_flag.m4
|
184
198
|
- ext/ffi_c/libffi/m4/ax_compiler_vendor.m4
|
185
199
|
- ext/ffi_c/libffi/m4/ax_configure_args.m4
|
186
200
|
- ext/ffi_c/libffi/m4/ax_enable_builddir.m4
|
@@ -196,20 +210,30 @@ files:
|
|
196
210
|
- ext/ffi_c/libffi/man/ffi.3
|
197
211
|
- ext/ffi_c/libffi/man/ffi_call.3
|
198
212
|
- ext/ffi_c/libffi/man/ffi_prep_cif.3
|
199
|
-
- ext/ffi_c/libffi/
|
213
|
+
- ext/ffi_c/libffi/man/ffi_prep_cif_var.3
|
200
214
|
- ext/ffi_c/libffi/missing
|
201
215
|
- ext/ffi_c/libffi/msvcc.sh
|
216
|
+
- ext/ffi_c/libffi/src/aarch64/ffi.c
|
217
|
+
- ext/ffi_c/libffi/src/aarch64/ffitarget.h
|
218
|
+
- ext/ffi_c/libffi/src/aarch64/internal.h
|
219
|
+
- ext/ffi_c/libffi/src/aarch64/sysv.S
|
202
220
|
- ext/ffi_c/libffi/src/alpha/ffi.c
|
203
221
|
- ext/ffi_c/libffi/src/alpha/ffitarget.h
|
222
|
+
- ext/ffi_c/libffi/src/alpha/internal.h
|
204
223
|
- ext/ffi_c/libffi/src/alpha/osf.S
|
224
|
+
- ext/ffi_c/libffi/src/arc/arcompact.S
|
225
|
+
- ext/ffi_c/libffi/src/arc/ffi.c
|
226
|
+
- ext/ffi_c/libffi/src/arc/ffitarget.h
|
205
227
|
- ext/ffi_c/libffi/src/arm/ffi.c
|
206
228
|
- ext/ffi_c/libffi/src/arm/ffitarget.h
|
207
|
-
- ext/ffi_c/libffi/src/arm/
|
229
|
+
- ext/ffi_c/libffi/src/arm/internal.h
|
208
230
|
- ext/ffi_c/libffi/src/arm/sysv.S
|
209
|
-
- ext/ffi_c/libffi/src/arm/trampoline.S
|
210
231
|
- ext/ffi_c/libffi/src/avr32/ffi.c
|
211
232
|
- ext/ffi_c/libffi/src/avr32/ffitarget.h
|
212
233
|
- ext/ffi_c/libffi/src/avr32/sysv.S
|
234
|
+
- ext/ffi_c/libffi/src/bfin/ffi.c
|
235
|
+
- ext/ffi_c/libffi/src/bfin/ffitarget.h
|
236
|
+
- ext/ffi_c/libffi/src/bfin/sysv.S
|
213
237
|
- ext/ffi_c/libffi/src/closures.c
|
214
238
|
- ext/ffi_c/libffi/src/cris/ffi.c
|
215
239
|
- ext/ffi_c/libffi/src/cris/ffitarget.h
|
@@ -230,12 +254,28 @@ files:
|
|
230
254
|
- ext/ffi_c/libffi/src/m68k/ffi.c
|
231
255
|
- ext/ffi_c/libffi/src/m68k/ffitarget.h
|
232
256
|
- ext/ffi_c/libffi/src/m68k/sysv.S
|
257
|
+
- ext/ffi_c/libffi/src/m88k/ffi.c
|
258
|
+
- ext/ffi_c/libffi/src/m88k/ffitarget.h
|
259
|
+
- ext/ffi_c/libffi/src/m88k/obsd.S
|
260
|
+
- ext/ffi_c/libffi/src/metag/ffi.c
|
261
|
+
- ext/ffi_c/libffi/src/metag/ffitarget.h
|
262
|
+
- ext/ffi_c/libffi/src/metag/sysv.S
|
263
|
+
- ext/ffi_c/libffi/src/microblaze/ffi.c
|
264
|
+
- ext/ffi_c/libffi/src/microblaze/ffitarget.h
|
265
|
+
- ext/ffi_c/libffi/src/microblaze/sysv.S
|
233
266
|
- ext/ffi_c/libffi/src/mips/ffi.c
|
234
267
|
- ext/ffi_c/libffi/src/mips/ffitarget.h
|
235
268
|
- ext/ffi_c/libffi/src/mips/n32.S
|
236
269
|
- ext/ffi_c/libffi/src/mips/o32.S
|
237
270
|
- ext/ffi_c/libffi/src/moxie/eabi.S
|
238
271
|
- ext/ffi_c/libffi/src/moxie/ffi.c
|
272
|
+
- ext/ffi_c/libffi/src/moxie/ffitarget.h
|
273
|
+
- ext/ffi_c/libffi/src/nios2/ffi.c
|
274
|
+
- ext/ffi_c/libffi/src/nios2/ffitarget.h
|
275
|
+
- ext/ffi_c/libffi/src/nios2/sysv.S
|
276
|
+
- ext/ffi_c/libffi/src/or1k/ffi.c
|
277
|
+
- ext/ffi_c/libffi/src/or1k/ffitarget.h
|
278
|
+
- ext/ffi_c/libffi/src/or1k/sysv.S
|
239
279
|
- ext/ffi_c/libffi/src/pa/ffi.c
|
240
280
|
- ext/ffi_c/libffi/src/pa/ffitarget.h
|
241
281
|
- ext/ffi_c/libffi/src/pa/hpux32.S
|
@@ -247,6 +287,9 @@ files:
|
|
247
287
|
- ext/ffi_c/libffi/src/powerpc/darwin_closure.S
|
248
288
|
- ext/ffi_c/libffi/src/powerpc/ffi.c
|
249
289
|
- ext/ffi_c/libffi/src/powerpc/ffi_darwin.c
|
290
|
+
- ext/ffi_c/libffi/src/powerpc/ffi_linux64.c
|
291
|
+
- ext/ffi_c/libffi/src/powerpc/ffi_powerpc.h
|
292
|
+
- ext/ffi_c/libffi/src/powerpc/ffi_sysv.c
|
250
293
|
- ext/ffi_c/libffi/src/powerpc/ffitarget.h
|
251
294
|
- ext/ffi_c/libffi/src/powerpc/linux64.S
|
252
295
|
- ext/ffi_c/libffi/src/powerpc/linux64_closure.S
|
@@ -256,6 +299,7 @@ files:
|
|
256
299
|
- ext/ffi_c/libffi/src/raw_api.c
|
257
300
|
- ext/ffi_c/libffi/src/s390/ffi.c
|
258
301
|
- ext/ffi_c/libffi/src/s390/ffitarget.h
|
302
|
+
- ext/ffi_c/libffi/src/s390/internal.h
|
259
303
|
- ext/ffi_c/libffi/src/s390/sysv.S
|
260
304
|
- ext/ffi_c/libffi/src/sh/ffi.c
|
261
305
|
- ext/ffi_c/libffi/src/sh/ffitarget.h
|
@@ -264,27 +308,40 @@ files:
|
|
264
308
|
- ext/ffi_c/libffi/src/sh64/ffitarget.h
|
265
309
|
- ext/ffi_c/libffi/src/sh64/sysv.S
|
266
310
|
- ext/ffi_c/libffi/src/sparc/ffi.c
|
311
|
+
- ext/ffi_c/libffi/src/sparc/ffi64.c
|
267
312
|
- ext/ffi_c/libffi/src/sparc/ffitarget.h
|
313
|
+
- ext/ffi_c/libffi/src/sparc/internal.h
|
268
314
|
- ext/ffi_c/libffi/src/sparc/v8.S
|
269
315
|
- ext/ffi_c/libffi/src/sparc/v9.S
|
316
|
+
- ext/ffi_c/libffi/src/tile/ffi.c
|
317
|
+
- ext/ffi_c/libffi/src/tile/ffitarget.h
|
318
|
+
- ext/ffi_c/libffi/src/tile/tile.S
|
270
319
|
- ext/ffi_c/libffi/src/types.c
|
271
|
-
- ext/ffi_c/libffi/src/
|
272
|
-
- ext/ffi_c/libffi/src/
|
320
|
+
- ext/ffi_c/libffi/src/vax/elfbsd.S
|
321
|
+
- ext/ffi_c/libffi/src/vax/ffi.c
|
322
|
+
- ext/ffi_c/libffi/src/vax/ffitarget.h
|
323
|
+
- ext/ffi_c/libffi/src/x86/asmnames.h
|
273
324
|
- ext/ffi_c/libffi/src/x86/ffi.c
|
274
325
|
- ext/ffi_c/libffi/src/x86/ffi64.c
|
275
326
|
- ext/ffi_c/libffi/src/x86/ffitarget.h
|
276
|
-
- ext/ffi_c/libffi/src/x86/
|
327
|
+
- ext/ffi_c/libffi/src/x86/ffiw64.c
|
328
|
+
- ext/ffi_c/libffi/src/x86/internal.h
|
329
|
+
- ext/ffi_c/libffi/src/x86/internal64.h
|
277
330
|
- ext/ffi_c/libffi/src/x86/sysv.S
|
278
331
|
- ext/ffi_c/libffi/src/x86/unix64.S
|
279
|
-
- ext/ffi_c/libffi/src/x86/win32.S
|
280
332
|
- ext/ffi_c/libffi/src/x86/win64.S
|
333
|
+
- ext/ffi_c/libffi/src/x86/win64_intel.S
|
334
|
+
- ext/ffi_c/libffi/src/xtensa/ffi.c
|
335
|
+
- ext/ffi_c/libffi/src/xtensa/ffitarget.h
|
336
|
+
- ext/ffi_c/libffi/src/xtensa/sysv.S
|
337
|
+
- ext/ffi_c/libffi/stamp-h.in
|
281
338
|
- ext/ffi_c/libffi/testsuite/Makefile.am
|
282
339
|
- ext/ffi_c/libffi/testsuite/Makefile.in
|
283
340
|
- ext/ffi_c/libffi/testsuite/config/default.exp
|
284
|
-
- ext/ffi_c/libffi/testsuite/lib/libffi-dg.exp
|
285
341
|
- ext/ffi_c/libffi/testsuite/lib/libffi.exp
|
286
342
|
- ext/ffi_c/libffi/testsuite/lib/target-libpath.exp
|
287
343
|
- ext/ffi_c/libffi/testsuite/lib/wrapper.exp
|
344
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/align_mixed.c
|
288
345
|
- ext/ffi_c/libffi/testsuite/libffi.call/call.exp
|
289
346
|
- ext/ffi_c/libffi/testsuite/libffi.call/closure_fn0.c
|
290
347
|
- ext/ffi_c/libffi/testsuite/libffi.call/closure_fn1.c
|
@@ -294,7 +351,7 @@ files:
|
|
294
351
|
- ext/ffi_c/libffi/testsuite/libffi.call/closure_fn5.c
|
295
352
|
- ext/ffi_c/libffi/testsuite/libffi.call/closure_fn6.c
|
296
353
|
- ext/ffi_c/libffi/testsuite/libffi.call/closure_loc_fn0.c
|
297
|
-
- ext/ffi_c/libffi/testsuite/libffi.call/
|
354
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/closure_simple.c
|
298
355
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_12byte.c
|
299
356
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_16byte.c
|
300
357
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_18byte.c
|
@@ -337,6 +394,8 @@ files:
|
|
337
394
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_float.c
|
338
395
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble.c
|
339
396
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble_va.c
|
397
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/cls_many_mixed_args.c
|
398
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/cls_many_mixed_float_double.c
|
340
399
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_schar.c
|
341
400
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshort.c
|
342
401
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshortchar.c
|
@@ -348,10 +407,15 @@ files:
|
|
348
407
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_schar.c
|
349
408
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_sint.c
|
350
409
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_sshort.c
|
410
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/cls_struct_va1.c
|
351
411
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar.c
|
412
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar_va.c
|
352
413
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_uint.c
|
414
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/cls_uint_va.c
|
415
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/cls_ulong_va.c
|
353
416
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_ulonglong.c
|
354
417
|
- ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort.c
|
418
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort_va.c
|
355
419
|
- ext/ffi_c/libffi/testsuite/libffi.call/err_bad_abi.c
|
356
420
|
- ext/ffi_c/libffi/testsuite/libffi.call/err_bad_typedef.c
|
357
421
|
- ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h
|
@@ -360,13 +424,17 @@ files:
|
|
360
424
|
- ext/ffi_c/libffi/testsuite/libffi.call/float2.c
|
361
425
|
- ext/ffi_c/libffi/testsuite/libffi.call/float3.c
|
362
426
|
- ext/ffi_c/libffi/testsuite/libffi.call/float4.c
|
427
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/float_va.c
|
363
428
|
- ext/ffi_c/libffi/testsuite/libffi.call/huge_struct.c
|
364
429
|
- ext/ffi_c/libffi/testsuite/libffi.call/many.c
|
365
|
-
- ext/ffi_c/libffi/testsuite/libffi.call/
|
430
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/many2.c
|
431
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/many_double.c
|
432
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/many_mixed.c
|
366
433
|
- ext/ffi_c/libffi/testsuite/libffi.call/negint.c
|
367
434
|
- ext/ffi_c/libffi/testsuite/libffi.call/nested_struct.c
|
368
435
|
- ext/ffi_c/libffi/testsuite/libffi.call/nested_struct1.c
|
369
436
|
- ext/ffi_c/libffi/testsuite/libffi.call/nested_struct10.c
|
437
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/nested_struct11.c
|
370
438
|
- ext/ffi_c/libffi/testsuite/libffi.call/nested_struct2.c
|
371
439
|
- ext/ffi_c/libffi/testsuite/libffi.call/nested_struct3.c
|
372
440
|
- ext/ffi_c/libffi/testsuite/libffi.call/nested_struct4.c
|
@@ -375,6 +443,8 @@ files:
|
|
375
443
|
- ext/ffi_c/libffi/testsuite/libffi.call/nested_struct7.c
|
376
444
|
- ext/ffi_c/libffi/testsuite/libffi.call/nested_struct8.c
|
377
445
|
- ext/ffi_c/libffi/testsuite/libffi.call/nested_struct9.c
|
446
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/offsets.c
|
447
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/pr1172638.c
|
378
448
|
- ext/ffi_c/libffi/testsuite/libffi.call/problem1.c
|
379
449
|
- ext/ffi_c/libffi/testsuite/libffi.call/promotion.c
|
380
450
|
- ext/ffi_c/libffi/testsuite/libffi.call/pyobjc-tc.c
|
@@ -397,7 +467,9 @@ files:
|
|
397
467
|
- ext/ffi_c/libffi/testsuite/libffi.call/stret_medium.c
|
398
468
|
- ext/ffi_c/libffi/testsuite/libffi.call/stret_medium2.c
|
399
469
|
- ext/ffi_c/libffi/testsuite/libffi.call/strlen.c
|
400
|
-
- ext/ffi_c/libffi/testsuite/libffi.call/
|
470
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/strlen2.c
|
471
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/strlen3.c
|
472
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/strlen4.c
|
401
473
|
- ext/ffi_c/libffi/testsuite/libffi.call/struct1.c
|
402
474
|
- ext/ffi_c/libffi/testsuite/libffi.call/struct2.c
|
403
475
|
- ext/ffi_c/libffi/testsuite/libffi.call/struct3.c
|
@@ -408,11 +480,60 @@ files:
|
|
408
480
|
- ext/ffi_c/libffi/testsuite/libffi.call/struct8.c
|
409
481
|
- ext/ffi_c/libffi/testsuite/libffi.call/struct9.c
|
410
482
|
- ext/ffi_c/libffi/testsuite/libffi.call/testclosure.c
|
411
|
-
- ext/ffi_c/libffi/testsuite/libffi.
|
412
|
-
- ext/ffi_c/libffi/testsuite/libffi.
|
413
|
-
- ext/ffi_c/libffi/testsuite/libffi.
|
414
|
-
- ext/ffi_c/libffi/testsuite/libffi.
|
415
|
-
- ext/ffi_c/libffi/
|
483
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/uninitialized.c
|
484
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/unwindtest.cc
|
485
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/unwindtest_ffi_call.cc
|
486
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/va_1.c
|
487
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/va_struct1.c
|
488
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/va_struct2.c
|
489
|
+
- ext/ffi_c/libffi/testsuite/libffi.call/va_struct3.c
|
490
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex.inc
|
491
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_double.c
|
492
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_float.c
|
493
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_longdouble.c
|
494
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex.inc
|
495
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_double.c
|
496
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_float.c
|
497
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_longdouble.c
|
498
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct.inc
|
499
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_double.c
|
500
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_float.c
|
501
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_longdouble.c
|
502
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va.inc
|
503
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_double.c
|
504
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_float.c
|
505
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_longdouble.c
|
506
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/complex.exp
|
507
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/complex.inc
|
508
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_double.inc
|
509
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_float.inc
|
510
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_longdouble.inc
|
511
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/complex_double.c
|
512
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/complex_float.c
|
513
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/complex_int.c
|
514
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/complex_longdouble.c
|
515
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/ffitest.h
|
516
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/many_complex.inc
|
517
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_double.c
|
518
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_float.c
|
519
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_longdouble.c
|
520
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/return_complex.inc
|
521
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1.inc
|
522
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_double.c
|
523
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_float.c
|
524
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_longdouble.c
|
525
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2.inc
|
526
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_double.c
|
527
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_float.c
|
528
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_longdouble.c
|
529
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_double.c
|
530
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_float.c
|
531
|
+
- ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_longdouble.c
|
532
|
+
- ext/ffi_c/libffi/testsuite/libffi.go/aa-direct.c
|
533
|
+
- ext/ffi_c/libffi/testsuite/libffi.go/closure1.c
|
534
|
+
- ext/ffi_c/libffi/testsuite/libffi.go/ffitest.h
|
535
|
+
- ext/ffi_c/libffi/testsuite/libffi.go/go.exp
|
536
|
+
- ext/ffi_c/libffi/testsuite/libffi.go/static-chain.h
|
416
537
|
- ext/ffi_c/rbffi.h
|
417
538
|
- ext/ffi_c/rbffi_endian.h
|
418
539
|
- ext/ffi_c/win32/stdbool.h
|
@@ -424,6 +545,7 @@ files:
|
|
424
545
|
- lib/2.2/ffi_c.so
|
425
546
|
- lib/2.3/ffi_c.so
|
426
547
|
- lib/2.4/ffi_c.so
|
548
|
+
- lib/2.5/ffi_c.so
|
427
549
|
- lib/ffi.rb
|
428
550
|
- lib/ffi/autopointer.rb
|
429
551
|
- lib/ffi/buffer.rb
|
@@ -459,6 +581,7 @@ files:
|
|
459
581
|
- lib/ffi/platform/s390x-linux/types.conf
|
460
582
|
- lib/ffi/platform/sparc-linux/types.conf
|
461
583
|
- lib/ffi/platform/sparc-solaris/types.conf
|
584
|
+
- lib/ffi/platform/sparc64-linux/types.conf
|
462
585
|
- lib/ffi/platform/sparcv9-solaris/types.conf
|
463
586
|
- lib/ffi/platform/x86_64-cygwin/types.conf
|
464
587
|
- lib/ffi/platform/x86_64-darwin/types.conf
|
@@ -498,16 +621,19 @@ files:
|
|
498
621
|
- libtest/VariadicTest.c
|
499
622
|
- spec/ffi/LICENSE.SPECS
|
500
623
|
- spec/ffi/async_callback_spec.rb
|
624
|
+
- spec/ffi/bitmask_spec.rb
|
501
625
|
- spec/ffi/bool_spec.rb
|
502
626
|
- spec/ffi/buffer_spec.rb
|
503
627
|
- spec/ffi/callback_spec.rb
|
504
628
|
- spec/ffi/custom_param_type.rb
|
505
629
|
- spec/ffi/custom_type_spec.rb
|
506
630
|
- spec/ffi/dup_spec.rb
|
631
|
+
- spec/ffi/embed-test/ext/Makefile
|
507
632
|
- spec/ffi/enum_spec.rb
|
508
633
|
- spec/ffi/errno_spec.rb
|
509
634
|
- spec/ffi/ffi_spec.rb
|
510
635
|
- spec/ffi/fixtures/Benchmark.c
|
636
|
+
- spec/ffi/fixtures/BitmaskTest.c
|
511
637
|
- spec/ffi/fixtures/BoolTest.c
|
512
638
|
- spec/ffi/fixtures/BufferTest.c
|
513
639
|
- spec/ffi/fixtures/ClosureTest.c
|
@@ -569,7 +695,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
569
695
|
version: '2.0'
|
570
696
|
- - "<"
|
571
697
|
- !ruby/object:Gem::Version
|
572
|
-
version: '2.
|
698
|
+
version: '2.6'
|
573
699
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
574
700
|
requirements:
|
575
701
|
- - ">="
|
@@ -577,7 +703,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
577
703
|
version: '0'
|
578
704
|
requirements: []
|
579
705
|
rubyforge_project:
|
580
|
-
rubygems_version: 2.
|
706
|
+
rubygems_version: 2.7.3
|
581
707
|
signing_key:
|
582
708
|
specification_version: 4
|
583
709
|
summary: Ruby FFI
|