ffi 0.5.0-x86-mingw32 → 0.5.1-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.

data/Rakefile CHANGED
@@ -78,7 +78,7 @@ PROJ.name = 'ffi'
78
78
  PROJ.authors = 'Wayne Meissner'
79
79
  PROJ.email = 'wmeissner@gmail.com'
80
80
  PROJ.url = 'http://wiki.github.com/ffi/ffi'
81
- PROJ.version = '0.5.0'
81
+ PROJ.version = '0.5.1'
82
82
  PROJ.rubyforge.name = 'ffi'
83
83
  PROJ.readme_file = 'README.rdoc'
84
84
 
@@ -86,7 +86,7 @@ PROJ.readme_file = 'README.rdoc'
86
86
  PROJ.ann.paragraphs << 'FEATURES' << 'SYNOPSIS' << 'REQUIREMENTS' << 'DOWNLOAD/INSTALL' << 'CREDITS' << 'LICENSE'
87
87
 
88
88
  PROJ.ann.email[:from] = 'andrea.fazzi@alcacoop.it'
89
- PROJ.ann.email[:to] << 'ruby-ffi@groups.google.com'
89
+ PROJ.ann.email[:to] = ['ruby-ffi@googlegroups.com']
90
90
  PROJ.ann.email[:server] = 'smtp.gmail.com'
91
91
 
92
92
  # Gem specifications
@@ -156,6 +156,7 @@ get_pointer_value(VALUE value)
156
156
  return MEMORY_PTR(rb_funcall2(value, id_to_ptr, 0, NULL));
157
157
  } else {
158
158
  rb_raise(rb_eArgError, "value is not a pointer");
159
+ return NULL;
159
160
  }
160
161
  }
161
162
 
@@ -253,6 +254,7 @@ memory_put_string(VALUE self, VALUE offset, VALUE str)
253
254
 
254
255
  if (rb_safe_level() >= 1 && OBJ_TAINTED(str)) {
255
256
  rb_raise(rb_eSecurityError, "Writing unsafe string to memory");
257
+ return Qnil;
256
258
  }
257
259
 
258
260
  memcpy(ptr->address + off, RSTRING_PTR(str), len);
@@ -290,10 +292,12 @@ memory_put_bytes(int argc, VALUE* argv, VALUE self)
290
292
  idx = nargs > 2 ? NUM2LONG(rbIndex) : 0;
291
293
  if (idx < 0) {
292
294
  rb_raise(rb_eRangeError, "index canot be less than zero");
295
+ return Qnil;
293
296
  }
294
297
  len = nargs > 3 ? NUM2LONG(rbLength) : (RSTRING_LEN(str) - idx);
295
298
  if ((idx + len) > RSTRING_LEN(str)) {
296
299
  rb_raise(rb_eRangeError, "index+length is greater than size of string");
300
+ return Qnil;
297
301
  }
298
302
 
299
303
  checkWrite(ptr);
@@ -301,6 +305,7 @@ memory_put_bytes(int argc, VALUE* argv, VALUE self)
301
305
 
302
306
  if (rb_safe_level() >= 1 && OBJ_TAINTED(str)) {
303
307
  rb_raise(rb_eSecurityError, "Writing unsafe string to memory");
308
+ return Qnil;
304
309
  }
305
310
  memcpy(ptr->address + off, RSTRING_PTR(str) + idx, len);
306
311
 
@@ -87,6 +87,7 @@ buffer_initialize(int argc, VALUE* argv, VALUE self)
87
87
  p->storage = xmalloc(p->memory.size + 7);
88
88
  if (p->storage == NULL) {
89
89
  rb_raise(rb_eNoMemError, "Failed to allocate memory size=%lu bytes", p->memory.size);
90
+ return Qnil;
90
91
  }
91
92
 
92
93
  /* ensure the memory is aligned on at least a 8 byte boundary */
@@ -98,6 +98,7 @@ memptr_malloc(VALUE self, long size, long count, bool clear)
98
98
  p->storage = xmalloc(msize + 7);
99
99
  if (p->storage == NULL) {
100
100
  rb_raise(rb_eNoMemError, "Failed to allocate memory size=%ld bytes", msize);
101
+ return Qnil;
101
102
  }
102
103
  p->autorelease = true;
103
104
  p->memory.typeSize = size;
@@ -145,28 +145,12 @@ variadic_initialize(VALUE self, VALUE rbFunction, VALUE rbParameterTypes, VALUE
145
145
  return retval;
146
146
  }
147
147
 
148
-
149
- static inline VALUE
150
- ffi_invoke(ffi_cif* cif, void* function, Type* returnType, void** ffiValues,
151
- VALUE rbReturnType, VALUE rbEnums)
152
- {
153
- FFIStorage retval;
154
-
155
- #ifdef USE_RAW
156
- ffi_raw_call(cif, function, &retval, (ffi_raw *) ffiValues[0]);
157
- #else
158
- ffi_call(cif, function, &retval, ffiValues);
159
- #endif
160
- rbffi_save_errno();
161
-
162
- return rbffi_NativeValue_ToRuby(returnType, rbReturnType, &retval, rbEnums);
163
- }
164
-
165
148
  static VALUE
166
149
  variadic_invoke(VALUE self, VALUE parameterTypes, VALUE parameterValues)
167
150
  {
168
151
  VariadicInvoker* invoker;
169
152
  FFIStorage* params;
153
+ void* retval;
170
154
  ffi_cif cif;
171
155
  void** ffiValues;
172
156
  ffi_type** ffiParamTypes;
@@ -186,6 +170,7 @@ variadic_invoke(VALUE self, VALUE parameterTypes, VALUE parameterValues)
186
170
  params = ALLOCA_N(FFIStorage, paramCount);
187
171
  ffiValues = ALLOCA_N(void*, paramCount);
188
172
  argv = ALLOCA_N(VALUE, paramCount);
173
+ retval = alloca(MAX(invoker->returnType->ffiType->size, FFI_SIZEOF_ARG));
189
174
 
190
175
  for (i = 0; i < paramCount; ++i) {
191
176
  VALUE entry = rb_ary_entry(parameterTypes, i);
@@ -241,8 +226,11 @@ variadic_invoke(VALUE self, VALUE parameterTypes, VALUE parameterValues)
241
226
  rbffi_SetupCallParams(paramCount, argv, -1, paramTypes, params,
242
227
  ffiValues, NULL, 0, invoker->rbEnums);
243
228
 
244
- return ffi_invoke(&cif, invoker->function, invoker->returnType,
245
- ffiValues, invoker->rbReturnType, invoker->rbEnums);
229
+ ffi_call(&cif, invoker->function, retval, ffiValues);
230
+
231
+ rbffi_save_errno();
232
+
233
+ return rbffi_NativeValue_ToRuby(invoker->returnType, invoker->rbReturnType, retval, invoker->rbEnums);
246
234
  }
247
235
 
248
236
 
@@ -1,7 +1,8 @@
1
- This is ../libffi/doc/libffi.info, produced by makeinfo version 4.11
2
- from ../libffi/doc/libffi.texi.
1
+ This is /Users/wayne/src/ruby-ffi.git/ext/ffi_c/libffi/doc/libffi.info,
2
+ produced by makeinfo version 4.7 from
3
+ /Users/wayne/src/ruby-ffi.git/ext/ffi_c/libffi/doc/libffi.texi.
3
4
 
4
- This manual is for Libffi, a portable foreign-function interface
5
+ This manual is for Libffi, a portable foreign-function interface
5
6
  library.
6
7
 
7
8
  Copyright (C) 2008 Red Hat, Inc.
@@ -111,10 +112,10 @@ To prepare a call interface object, use the function `ffi_prep_cif'.
111
112
  This initializes CIF according to the given parameters.
112
113
 
113
114
  ABI is the ABI to use; normally `FFI_DEFAULT_ABI' is what you
114
- want. *note Multiple ABIs:: for more information.
115
+ want. *Note Multiple ABIs:: for more information.
115
116
 
116
117
  NARGS is the number of arguments that this function accepts.
117
- `libffi' does not yet handle varargs functions; see *note Missing
118
+ `libffi' does not yet handle varargs functions; see *Note Missing
118
119
  Features:: for more information.
119
120
 
120
121
  RTYPE is a pointer to an `ffi_type' structure that describes the
@@ -516,18 +517,18 @@ Index
516
517
 
517
518
  
518
519
  Tag Table:
519
- Node: Top688
520
- Node: Introduction1424
521
- Node: Using libffi3060
522
- Node: The Basics3495
523
- Node: Simple Example6102
524
- Node: Types7129
525
- Node: Primitive Types7412
526
- Node: Structures9232
527
- Node: Type Example10092
528
- Node: Multiple ABIs11315
529
- Node: The Closure API11686
530
- Node: Missing Features14606
531
- Node: Index15099
520
+ Node: Top764
521
+ Node: Introduction1500
522
+ Node: Using libffi3136
523
+ Node: The Basics3571
524
+ Node: Simple Example6178
525
+ Node: Types7205
526
+ Node: Primitive Types7488
527
+ Node: Structures9308
528
+ Node: Type Example10168
529
+ Node: Multiple ABIs11391
530
+ Node: The Closure API11762
531
+ Node: Missing Features14682
532
+ Node: Index15175
532
533
  
533
534
  End Tag Table
Binary file
Binary file
@@ -387,12 +387,18 @@ describe FFI::Struct, ' by value' do
387
387
  class S8S32 < FFI::Struct
388
388
  layout :s8, :char, :s32, :int
389
389
  end
390
+
391
+ class StructString < FFI::Struct
392
+ layout :bytes, :string, :len, :int
393
+ end
394
+
390
395
  attach_function :struct_return_s8s32, [ ], S8S32.by_value
391
396
  attach_function :struct_s8s32_set, [ :char, :int ], S8S32.by_value
392
397
  attach_function :struct_s8s32_get_s8, [ S8S32.by_value ], :char
393
398
  attach_function :struct_s8s32_get_s32, [ S8S32.by_value ], :int
394
399
  attach_function :struct_s8s32_s32_ret_s32, [ S8S32.by_value, :int ], :int
395
400
  attach_function :struct_s8s32_s64_ret_s64, [ S8S32.by_value, :long_long ], :long_long
401
+ attach_function :struct_varargs_ret_struct_string, [ :int, :varargs ], StructString.by_value
396
402
  end
397
403
 
398
404
  it 'return using pre-set values' do
@@ -430,6 +436,13 @@ describe FFI::Struct, ' by value' do
430
436
 
431
437
  LibTest.struct_s8s32_s64_ret_s64(s, 0xdeadcafebabe).should == 0xdeadcafebabe
432
438
  end
439
+
440
+ it 'varargs returning a struct' do
441
+ string = "test"
442
+ s = LibTest.struct_varargs_ret_struct_string(4, :string, string)
443
+ s[:len].should == string.length
444
+ s[:bytes].should == string
445
+ end
433
446
  end
434
447
 
435
448
  describe FFI::Struct, ' with an array field' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ffi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: x86-mingw32
6
6
  authors:
7
7
  - Wayne Meissner
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-10-06 00:00:00 +02:00
12
+ date: 2009-10-19 00:00:00 +10:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -40,327 +40,327 @@ files:
40
40
  - LICENSE
41
41
  - README.rdoc
42
42
  - Rakefile
43
- - ext/ffi_c/libffi.mk
44
- - ext/ffi_c/libffi.gnu.mk
45
- - ext/ffi_c/FunctionInfo.c
46
- - ext/ffi_c/StructByValue.h
47
- - ext/ffi_c/AbstractMemory.c
48
- - ext/ffi_c/ClosurePool.h
49
- - ext/ffi_c/MemoryPointer.c
50
- - ext/ffi_c/ffi.c
51
- - ext/ffi_c/Pointer.c
52
- - ext/ffi_c/Platform.c
53
- - ext/ffi_c/StructByValue.c
54
- - ext/ffi_c/ClosurePool.c
55
- - ext/ffi_c/MemoryPointer.h
56
- - ext/ffi_c/Type.h
57
- - ext/ffi_c/Function.h
58
- - ext/ffi_c/libffi/include/Makefile.am
59
- - ext/ffi_c/libffi/include/ffi_common.h
60
- - ext/ffi_c/libffi/include/ffi.h.in
61
- - ext/ffi_c/libffi/include/Makefile.in
62
- - ext/ffi_c/libffi/README
63
- - ext/ffi_c/libffi/acinclude.m4
43
+ - ext/ffi_c/libffi/LICENSE
44
+ - ext/ffi_c/libffi/texinfo.tex
64
45
  - ext/ffi_c/libffi/TODO
65
- - ext/ffi_c/libffi/Makefile.am
46
+ - ext/ffi_c/libffi/ltmain.sh
47
+ - ext/ffi_c/libffi/ltcf-cxx.sh
48
+ - ext/ffi_c/libffi/config.sub
49
+ - ext/ffi_c/libffi/src/types.c
50
+ - ext/ffi_c/libffi/src/ia64/ia64_flags.h
51
+ - ext/ffi_c/libffi/src/ia64/ffi.c
52
+ - ext/ffi_c/libffi/src/ia64/ffitarget.h
53
+ - ext/ffi_c/libffi/src/ia64/unix.S
54
+ - ext/ffi_c/libffi/src/x86/freebsd.S
55
+ - ext/ffi_c/libffi/src/x86/darwin.S
56
+ - ext/ffi_c/libffi/src/x86/ffitarget.h
57
+ - ext/ffi_c/libffi/src/x86/darwin64.S
58
+ - ext/ffi_c/libffi/src/x86/win32.S
59
+ - ext/ffi_c/libffi/src/x86/ffi.c
60
+ - ext/ffi_c/libffi/src/x86/sysv.S
61
+ - ext/ffi_c/libffi/src/x86/ffi64.c
62
+ - ext/ffi_c/libffi/src/x86/unix64.S
63
+ - ext/ffi_c/libffi/src/s390/sysv.S
64
+ - ext/ffi_c/libffi/src/s390/ffi.c
65
+ - ext/ffi_c/libffi/src/s390/ffitarget.h
66
+ - ext/ffi_c/libffi/src/arm/ffitarget.h
67
+ - ext/ffi_c/libffi/src/arm/ffi.c
68
+ - ext/ffi_c/libffi/src/arm/sysv.S
69
+ - ext/ffi_c/libffi/src/prep_cif.c
70
+ - ext/ffi_c/libffi/src/frv/eabi.S
71
+ - ext/ffi_c/libffi/src/frv/ffi.c
72
+ - ext/ffi_c/libffi/src/frv/ffitarget.h
73
+ - ext/ffi_c/libffi/src/sh/sysv.S
74
+ - ext/ffi_c/libffi/src/sh/ffi.c
75
+ - ext/ffi_c/libffi/src/sh/ffitarget.h
76
+ - ext/ffi_c/libffi/src/alpha/ffitarget.h
77
+ - ext/ffi_c/libffi/src/alpha/osf.S
78
+ - ext/ffi_c/libffi/src/alpha/ffi.c
79
+ - ext/ffi_c/libffi/src/mips/n32.S
80
+ - ext/ffi_c/libffi/src/mips/o32.S
81
+ - ext/ffi_c/libffi/src/mips/ffitarget.h
82
+ - ext/ffi_c/libffi/src/mips/ffi.c
83
+ - ext/ffi_c/libffi/src/debug.c
84
+ - ext/ffi_c/libffi/src/java_raw_api.c
85
+ - ext/ffi_c/libffi/src/dlmalloc.c
86
+ - ext/ffi_c/libffi/src/m32r/ffitarget.h
87
+ - ext/ffi_c/libffi/src/m32r/ffi.c
88
+ - ext/ffi_c/libffi/src/m32r/sysv.S
89
+ - ext/ffi_c/libffi/src/cris/ffi.c
90
+ - ext/ffi_c/libffi/src/cris/ffitarget.h
91
+ - ext/ffi_c/libffi/src/cris/sysv.S
92
+ - ext/ffi_c/libffi/src/pa/linux.S
93
+ - ext/ffi_c/libffi/src/pa/ffitarget.h
94
+ - ext/ffi_c/libffi/src/pa/hpux32.S
95
+ - ext/ffi_c/libffi/src/pa/ffi.c
96
+ - ext/ffi_c/libffi/src/sparc/ffitarget.h
97
+ - ext/ffi_c/libffi/src/sparc/ffi.c
98
+ - ext/ffi_c/libffi/src/sparc/v9.S
99
+ - ext/ffi_c/libffi/src/sparc/v8.S
100
+ - ext/ffi_c/libffi/src/closures.c
101
+ - ext/ffi_c/libffi/src/raw_api.c
102
+ - ext/ffi_c/libffi/src/powerpc/aix.S
103
+ - ext/ffi_c/libffi/src/powerpc/linux64_closure.S
104
+ - ext/ffi_c/libffi/src/powerpc/darwin.S
105
+ - ext/ffi_c/libffi/src/powerpc/ffi.c
106
+ - ext/ffi_c/libffi/src/powerpc/linux64.S
107
+ - ext/ffi_c/libffi/src/powerpc/aix_closure.S
108
+ - ext/ffi_c/libffi/src/powerpc/darwin_closure.S
109
+ - ext/ffi_c/libffi/src/powerpc/ppc_closure.S
110
+ - ext/ffi_c/libffi/src/powerpc/sysv.S
111
+ - ext/ffi_c/libffi/src/powerpc/asm.h
112
+ - ext/ffi_c/libffi/src/powerpc/ffi_darwin.c
113
+ - ext/ffi_c/libffi/src/powerpc/ffitarget.h
114
+ - ext/ffi_c/libffi/src/m68k/sysv.S
115
+ - ext/ffi_c/libffi/src/m68k/ffi.c
116
+ - ext/ffi_c/libffi/src/m68k/ffitarget.h
117
+ - ext/ffi_c/libffi/src/sh64/ffitarget.h
118
+ - ext/ffi_c/libffi/src/sh64/ffi.c
119
+ - ext/ffi_c/libffi/src/sh64/sysv.S
120
+ - ext/ffi_c/libffi/libffi.pc.in
121
+ - ext/ffi_c/libffi/config.guess
122
+ - ext/ffi_c/libffi/ltcf-gcj.sh
123
+ - ext/ffi_c/libffi/configure.host
124
+ - ext/ffi_c/libffi/fficonfig.h.in
125
+ - ext/ffi_c/libffi/ChangeLog.v1
126
+ - ext/ffi_c/libffi/ChangeLog.libffi
66
127
  - ext/ffi_c/libffi/install-sh
128
+ - ext/ffi_c/libffi/doc/libffi.texi
129
+ - ext/ffi_c/libffi/doc/libffi.info
130
+ - ext/ffi_c/libffi/doc/version.texi
131
+ - ext/ffi_c/libffi/doc/stamp-vti
132
+ - ext/ffi_c/libffi/configure
133
+ - ext/ffi_c/libffi/aclocal.m4
134
+ - ext/ffi_c/libffi/mdate-sh
135
+ - ext/ffi_c/libffi/man/Makefile.in
136
+ - ext/ffi_c/libffi/man/ffi_call.3
137
+ - ext/ffi_c/libffi/man/Makefile.am
138
+ - ext/ffi_c/libffi/man/ffi.3
139
+ - ext/ffi_c/libffi/man/ffi_prep_cif.3
67
140
  - ext/ffi_c/libffi/ChangeLog.libgcj
68
- - ext/ffi_c/libffi/ltcf-gcj.sh
69
- - ext/ffi_c/libffi/ltmain.sh
70
- - ext/ffi_c/libffi/testsuite/Makefile.am
141
+ - ext/ffi_c/libffi/README
142
+ - ext/ffi_c/libffi/Makefile.am
143
+ - ext/ffi_c/libffi/missing
144
+ - ext/ffi_c/libffi/ChangeLog
145
+ - ext/ffi_c/libffi/depcomp
146
+ - ext/ffi_c/libffi/ltcf-c.sh
71
147
  - ext/ffi_c/libffi/testsuite/config/default.exp
72
- - ext/ffi_c/libffi/testsuite/Makefile.in
73
- - ext/ffi_c/libffi/testsuite/libffi.special/special.exp
74
- - ext/ffi_c/libffi/testsuite/libffi.special/unwindtest_ffi_call.cc
75
- - ext/ffi_c/libffi/testsuite/libffi.special/ffitestcxx.h
76
- - ext/ffi_c/libffi/testsuite/libffi.special/unwindtest.cc
77
- - ext/ffi_c/libffi/testsuite/lib/wrapper.exp
78
- - ext/ffi_c/libffi/testsuite/lib/target-libpath.exp
79
- - ext/ffi_c/libffi/testsuite/lib/libffi-dg.exp
80
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_18byte.c
81
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort.c
82
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_float.c
148
+ - ext/ffi_c/libffi/testsuite/libffi.call/call.exp
149
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn2.c
83
150
  - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_uchar.c
84
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint64.c
85
- - ext/ffi_c/libffi/testsuite/libffi.call/return_uc.c
86
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte1.c
87
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_uint.c
88
- - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn3.c
89
- - ext/ffi_c/libffi/testsuite/libffi.call/float4.c
90
- - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct4.c
91
- - ext/ffi_c/libffi/testsuite/libffi.call/strlen.c
92
- - ext/ffi_c/libffi/testsuite/libffi.call/many_win32.c
93
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint32.c
94
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte2.c
95
- - ext/ffi_c/libffi/testsuite/libffi.call/strlen_win32.c
96
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_double.c
151
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort.c
97
152
  - ext/ffi_c/libffi/testsuite/libffi.call/cls_double.c
153
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct8.c
98
154
  - ext/ffi_c/libffi/testsuite/libffi.call/cls_12byte.c
99
155
  - ext/ffi_c/libffi/testsuite/libffi.call/negint.c
100
- - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct2.c
101
156
  - ext/ffi_c/libffi/testsuite/libffi.call/struct6.c
157
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte1.c
158
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct2.c
159
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_schar.c
160
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte2.c
102
161
  - ext/ffi_c/libffi/testsuite/libffi.call/float3.c
103
- - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct10.c
104
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_3_1byte.c
105
- - ext/ffi_c/libffi/testsuite/libffi.call/float.c
106
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushortchar.c
107
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_24byte.c
108
- - ext/ffi_c/libffi/testsuite/libffi.call/return_fl2.c
162
+ - ext/ffi_c/libffi/testsuite/libffi.call/promotion.c
163
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_4_1byte.c
164
+ - ext/ffi_c/libffi/testsuite/libffi.call/float2.c
165
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct3.c
109
166
  - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct.c
167
+ - ext/ffi_c/libffi/testsuite/libffi.call/strlen_win32.c
168
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint32.c
169
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_dbl1.c
170
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct7.c
171
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_2byte.c
172
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct9.c
173
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_ul.c
174
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_float.c
175
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_sint.c
176
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_24byte.c
177
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn3.c
178
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_ulonglong.c
179
+ - ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h
180
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint32.c
181
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn1.c
110
182
  - ext/ffi_c/libffi/testsuite/libffi.call/cls_1_1byte.c
111
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_pointer.c
112
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_schar.c
113
- - ext/ffi_c/libffi/testsuite/libffi.call/struct3.c
114
- - ext/ffi_c/libffi/testsuite/libffi.call/return_sc.c
115
- - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn2.c
183
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct5.c
184
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_ll1.c
185
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_fl.c
116
186
  - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct1.c
117
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_ulonglong.c
118
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_sint.c
119
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_4_1byte.c
120
- - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct7.c
121
- - ext/ffi_c/libffi/testsuite/libffi.call/return_dbl.c
122
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte1.c
123
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshortchar.c
124
- - ext/ffi_c/libffi/testsuite/libffi.call/promotion.c
125
- - ext/ffi_c/libffi/testsuite/libffi.call/struct7.c
126
- - ext/ffi_c/libffi/testsuite/libffi.call/struct9.c
187
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte1.c
188
+ - ext/ffi_c/libffi/testsuite/libffi.call/float1.c
189
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_5_1_byte.c
127
190
  - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble.c
128
- - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct9.c
129
- - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct5.c
130
- - ext/ffi_c/libffi/testsuite/libffi.call/float2.c
191
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_stdcall.c
192
+ - ext/ffi_c/libffi/testsuite/libffi.call/pyobjc-tc.c
193
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_dbl2.c
194
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_sshort.c
195
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct4.c
196
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushortchar.c
131
197
  - ext/ffi_c/libffi/testsuite/libffi.call/cls_64byte.c
132
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_6byte.c
133
- - ext/ffi_c/libffi/testsuite/libffi.call/return_sl.c
134
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_19byte.c
135
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_8byte.c
136
198
  - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn0.c
137
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_7byte.c
199
+ - ext/ffi_c/libffi/testsuite/libffi.call/float.c
200
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_sl.c
201
+ - ext/ffi_c/libffi/testsuite/libffi.call/strlen.c
202
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_16byte.c
203
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint16.c
204
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn4.c
205
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_float.c
206
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_ll.c
207
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_3_1byte.c
138
208
  - ext/ffi_c/libffi/testsuite/libffi.call/cls_6_1_byte.c
139
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte1.c
140
- - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct6.c
209
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_7byte.c
210
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct4.c
211
+ - ext/ffi_c/libffi/testsuite/libffi.call/float4.c
212
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_fl1.c
213
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct5.c
214
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte2.c
215
+ - ext/ffi_c/libffi/testsuite/libffi.call/many_win32.c
216
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshortchar.c
217
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint64.c
218
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_sc.c
219
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_ldl.c
220
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_pointer.c
221
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct1.c
141
222
  - ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte.c
142
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_4byte.c
143
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint32.c
144
- - ext/ffi_c/libffi/testsuite/libffi.call/return_ll1.c
223
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshort.c
224
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_dbl.c
225
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn5.c
226
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_6byte.c
145
227
  - ext/ffi_c/libffi/testsuite/libffi.call/cls_7_1_byte.c
146
- - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn1.c
147
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_5_1_byte.c
148
- - ext/ffi_c/libffi/testsuite/libffi.call/struct5.c
149
- - ext/ffi_c/libffi/testsuite/libffi.call/many.c
150
- - ext/ffi_c/libffi/testsuite/libffi.call/return_ll.c
151
- - ext/ffi_c/libffi/testsuite/libffi.call/call.exp
152
- - ext/ffi_c/libffi/testsuite/libffi.call/struct1.c
153
228
  - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint64.c
154
- - ext/ffi_c/libffi/testsuite/libffi.call/struct8.c
155
- - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct8.c
156
- - ext/ffi_c/libffi/testsuite/libffi.call/return_fl.c
157
- - ext/ffi_c/libffi/testsuite/libffi.call/struct4.c
158
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar.c
159
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushort.c
160
229
  - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_schar.c
161
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint16.c
162
- - ext/ffi_c/libffi/testsuite/libffi.call/closure_stdcall.c
163
- - ext/ffi_c/libffi/testsuite/libffi.call/struct2.c
164
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint16.c
165
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_float.c
166
- - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct3.c
167
- - ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h
168
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshort.c
169
- - ext/ffi_c/libffi/testsuite/libffi.call/pyobjc-tc.c
170
- - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn5.c
171
- - ext/ffi_c/libffi/testsuite/libffi.call/return_dbl2.c
172
- - ext/ffi_c/libffi/testsuite/libffi.call/float1.c
173
- - ext/ffi_c/libffi/testsuite/libffi.call/return_fl1.c
174
- - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn6.c
175
- - ext/ffi_c/libffi/testsuite/libffi.call/return_ul.c
176
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte2.c
230
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_18byte.c
231
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct3.c
232
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar.c
233
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct9.c
177
234
  - ext/ffi_c/libffi/testsuite/libffi.call/problem1.c
235
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushort.c
178
236
  - ext/ffi_c/libffi/testsuite/libffi.call/cls_5byte.c
179
- - ext/ffi_c/libffi/testsuite/libffi.call/return_dbl1.c
180
- - ext/ffi_c/libffi/testsuite/libffi.call/return_ldl.c
181
237
  - ext/ffi_c/libffi/testsuite/libffi.call/return_fl3.c
182
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_2byte.c
183
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_16byte.c
184
- - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn4.c
185
- - ext/ffi_c/libffi/testsuite/libffi.call/cls_sshort.c
186
- - ext/ffi_c/libffi/compile
187
- - ext/ffi_c/libffi/config.sub
188
- - ext/ffi_c/libffi/ChangeLog.v1
189
- - ext/ffi_c/libffi/depcomp
190
- - ext/ffi_c/libffi/config.guess
191
- - ext/ffi_c/libffi/aclocal.m4
192
- - ext/ffi_c/libffi/ltcf-c.sh
193
- - ext/ffi_c/libffi/Makefile.in
194
- - ext/ffi_c/libffi/configure.host
195
- - ext/ffi_c/libffi/fficonfig.h.in
196
- - ext/ffi_c/libffi/mdate-sh
238
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct7.c
239
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct6.c
240
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_uc.c
241
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_fl2.c
242
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte1.c
243
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct8.c
244
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_19byte.c
245
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint16.c
246
+ - ext/ffi_c/libffi/testsuite/libffi.call/many.c
247
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_uint.c
248
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_8byte.c
249
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct2.c
250
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_double.c
251
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn6.c
252
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct10.c
253
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_4byte.c
254
+ - ext/ffi_c/libffi/testsuite/Makefile.in
255
+ - ext/ffi_c/libffi/testsuite/lib/wrapper.exp
256
+ - ext/ffi_c/libffi/testsuite/lib/target-libpath.exp
257
+ - ext/ffi_c/libffi/testsuite/lib/libffi-dg.exp
258
+ - ext/ffi_c/libffi/testsuite/Makefile.am
259
+ - ext/ffi_c/libffi/testsuite/libffi.special/unwindtest_ffi_call.cc
260
+ - ext/ffi_c/libffi/testsuite/libffi.special/ffitestcxx.h
261
+ - ext/ffi_c/libffi/testsuite/libffi.special/special.exp
262
+ - ext/ffi_c/libffi/testsuite/libffi.special/unwindtest.cc
263
+ - ext/ffi_c/libffi/configure.ac
197
264
  - ext/ffi_c/libffi/ltconfig
198
- - ext/ffi_c/libffi/doc/libffi.texi
199
- - ext/ffi_c/libffi/doc/stamp-vti
200
- - ext/ffi_c/libffi/doc/libffi.info
201
- - ext/ffi_c/libffi/doc/version.texi
202
- - ext/ffi_c/libffi/src/x86/ffi.c
203
- - ext/ffi_c/libffi/src/x86/sysv.S
204
- - ext/ffi_c/libffi/src/x86/darwin.S
205
- - ext/ffi_c/libffi/src/x86/ffitarget.h
206
- - ext/ffi_c/libffi/src/x86/unix64.S
207
- - ext/ffi_c/libffi/src/x86/darwin64.S
208
- - ext/ffi_c/libffi/src/x86/win32.S
209
- - ext/ffi_c/libffi/src/x86/ffi64.c
210
- - ext/ffi_c/libffi/src/x86/freebsd.S
211
- - ext/ffi_c/libffi/src/prep_cif.c
212
- - ext/ffi_c/libffi/src/ia64/ffi.c
213
- - ext/ffi_c/libffi/src/ia64/ffitarget.h
214
- - ext/ffi_c/libffi/src/ia64/unix.S
215
- - ext/ffi_c/libffi/src/ia64/ia64_flags.h
216
- - ext/ffi_c/libffi/src/alpha/ffi.c
217
- - ext/ffi_c/libffi/src/alpha/ffitarget.h
218
- - ext/ffi_c/libffi/src/alpha/osf.S
219
- - ext/ffi_c/libffi/src/sh64/ffi.c
220
- - ext/ffi_c/libffi/src/sh64/sysv.S
221
- - ext/ffi_c/libffi/src/sh64/ffitarget.h
222
- - ext/ffi_c/libffi/src/m68k/ffi.c
223
- - ext/ffi_c/libffi/src/m68k/sysv.S
224
- - ext/ffi_c/libffi/src/m68k/ffitarget.h
225
- - ext/ffi_c/libffi/src/m32r/ffi.c
226
- - ext/ffi_c/libffi/src/m32r/sysv.S
227
- - ext/ffi_c/libffi/src/m32r/ffitarget.h
228
- - ext/ffi_c/libffi/src/pa/ffi.c
229
- - ext/ffi_c/libffi/src/pa/ffitarget.h
230
- - ext/ffi_c/libffi/src/pa/linux.S
231
- - ext/ffi_c/libffi/src/pa/hpux32.S
232
- - ext/ffi_c/libffi/src/powerpc/aix.S
233
- - ext/ffi_c/libffi/src/powerpc/ffi.c
234
- - ext/ffi_c/libffi/src/powerpc/aix_closure.S
235
- - ext/ffi_c/libffi/src/powerpc/sysv.S
236
- - ext/ffi_c/libffi/src/powerpc/asm.h
237
- - ext/ffi_c/libffi/src/powerpc/darwin.S
238
- - ext/ffi_c/libffi/src/powerpc/ffitarget.h
239
- - ext/ffi_c/libffi/src/powerpc/linux64_closure.S
240
- - ext/ffi_c/libffi/src/powerpc/linux64.S
241
- - ext/ffi_c/libffi/src/powerpc/ppc_closure.S
242
- - ext/ffi_c/libffi/src/powerpc/darwin_closure.S
243
- - ext/ffi_c/libffi/src/powerpc/ffi_darwin.c
244
- - ext/ffi_c/libffi/src/dlmalloc.c
245
- - ext/ffi_c/libffi/src/mips/ffi.c
246
- - ext/ffi_c/libffi/src/mips/ffitarget.h
247
- - ext/ffi_c/libffi/src/mips/o32.S
248
- - ext/ffi_c/libffi/src/mips/n32.S
249
- - ext/ffi_c/libffi/src/types.c
250
- - ext/ffi_c/libffi/src/raw_api.c
251
- - ext/ffi_c/libffi/src/cris/ffi.c
252
- - ext/ffi_c/libffi/src/cris/sysv.S
253
- - ext/ffi_c/libffi/src/cris/ffitarget.h
254
- - ext/ffi_c/libffi/src/closures.c
255
- - ext/ffi_c/libffi/src/debug.c
256
- - ext/ffi_c/libffi/src/sh/ffi.c
257
- - ext/ffi_c/libffi/src/sh/sysv.S
258
- - ext/ffi_c/libffi/src/sh/ffitarget.h
259
- - ext/ffi_c/libffi/src/java_raw_api.c
260
- - ext/ffi_c/libffi/src/frv/ffi.c
261
- - ext/ffi_c/libffi/src/frv/eabi.S
262
- - ext/ffi_c/libffi/src/frv/ffitarget.h
263
- - ext/ffi_c/libffi/src/sparc/ffi.c
264
- - ext/ffi_c/libffi/src/sparc/ffitarget.h
265
- - ext/ffi_c/libffi/src/sparc/v9.S
266
- - ext/ffi_c/libffi/src/sparc/v8.S
267
- - ext/ffi_c/libffi/src/s390/ffi.c
268
- - ext/ffi_c/libffi/src/s390/sysv.S
269
- - ext/ffi_c/libffi/src/s390/ffitarget.h
270
- - ext/ffi_c/libffi/src/arm/ffi.c
271
- - ext/ffi_c/libffi/src/arm/sysv.S
272
- - ext/ffi_c/libffi/src/arm/ffitarget.h
273
- - ext/ffi_c/libffi/missing
274
- - ext/ffi_c/libffi/libffi.pc.in
275
- - ext/ffi_c/libffi/configure
276
- - ext/ffi_c/libffi/ltcf-cxx.sh
277
- - ext/ffi_c/libffi/ChangeLog
278
- - ext/ffi_c/libffi/ChangeLog.libffi
279
- - ext/ffi_c/libffi/man/Makefile.am
280
- - ext/ffi_c/libffi/man/ffi_prep_cif.3
281
- - ext/ffi_c/libffi/man/ffi_call.3
282
- - ext/ffi_c/libffi/man/Makefile.in
283
- - ext/ffi_c/libffi/man/ffi.3
265
+ - ext/ffi_c/libffi/include/Makefile.in
266
+ - ext/ffi_c/libffi/include/Makefile.am
267
+ - ext/ffi_c/libffi/include/ffi_common.h
268
+ - ext/ffi_c/libffi/include/ffi.h.in
284
269
  - ext/ffi_c/libffi/libtool-version
285
- - ext/ffi_c/libffi/texinfo.tex
270
+ - ext/ffi_c/libffi/acinclude.m4
271
+ - ext/ffi_c/libffi/compile
286
272
  - ext/ffi_c/libffi/mkinstalldirs
287
- - ext/ffi_c/libffi/LICENSE
288
- - ext/ffi_c/libffi/configure.ac
289
- - ext/ffi_c/Platform.h
290
- - ext/ffi_c/LastError.c
291
- - ext/ffi_c/Struct.c
292
- - ext/ffi_c/Function.c
293
- - ext/ffi_c/extconf.rb
273
+ - ext/ffi_c/libffi/Makefile.in
274
+ - ext/ffi_c/ClosurePool.h
275
+ - ext/ffi_c/libffi.gnu.mk
276
+ - ext/ffi_c/StructByValue.h
294
277
  - ext/ffi_c/MethodHandle.c
278
+ - ext/ffi_c/StructLayout.c
279
+ - ext/ffi_c/ArrayType.h
280
+ - ext/ffi_c/ffi.c
281
+ - ext/ffi_c/Platform.c
282
+ - ext/ffi_c/FunctionInfo.c
283
+ - ext/ffi_c/DynamicLibrary.c
295
284
  - ext/ffi_c/Call.c
296
- - ext/ffi_c/endian.h
297
285
  - ext/ffi_c/Types.c
298
- - ext/ffi_c/Variadic.c
286
+ - ext/ffi_c/MemoryPointer.h
287
+ - ext/ffi_c/Struct.c
288
+ - ext/ffi_c/AbstractMemory.c
289
+ - ext/ffi_c/rbffi.h
290
+ - ext/ffi_c/LastError.c
291
+ - ext/ffi_c/Pointer.c
292
+ - ext/ffi_c/Type.h
293
+ - ext/ffi_c/AutoPointer.c
294
+ - ext/ffi_c/libffi.bsd.mk
295
+ - ext/ffi_c/Function.c
299
296
  - ext/ffi_c/DynamicLibrary.h
300
- - ext/ffi_c/Struct.h
301
- - ext/ffi_c/Call.h
297
+ - ext/ffi_c/Platform.h
298
+ - ext/ffi_c/StructByValue.c
299
+ - ext/ffi_c/MethodHandle.h
300
+ - ext/ffi_c/ArrayType.c
301
+ - ext/ffi_c/Variadic.c
302
302
  - ext/ffi_c/compat.h
303
- - ext/ffi_c/Types.h
304
- - ext/ffi_c/Pointer.h
303
+ - ext/ffi_c/ClosurePool.c
304
+ - ext/ffi_c/Buffer.c
305
+ - ext/ffi_c/extconf.rb
306
+ - ext/ffi_c/Function.h
307
+ - ext/ffi_c/endian.h
305
308
  - ext/ffi_c/Type.c
306
- - ext/ffi_c/ArrayType.h
307
309
  - ext/ffi_c/AutoPointer.h
308
- - ext/ffi_c/LastError.h
309
- - ext/ffi_c/StructLayout.c
310
+ - ext/ffi_c/libffi.mk
311
+ - ext/ffi_c/MemoryPointer.c
312
+ - ext/ffi_c/Struct.h
310
313
  - ext/ffi_c/AbstractMemory.h
311
- - ext/ffi_c/ArrayType.c
314
+ - ext/ffi_c/LastError.h
315
+ - ext/ffi_c/Pointer.h
312
316
  - ext/ffi_c/libffi.darwin.mk
313
- - ext/ffi_c/rbffi.h
314
- - ext/ffi_c/DynamicLibrary.c
315
- - ext/ffi_c/AutoPointer.c
316
- - ext/ffi_c/libffi.bsd.mk
317
- - ext/ffi_c/MethodHandle.h
318
- - ext/ffi_c/Buffer.c
317
+ - ext/ffi_c/Call.h
318
+ - ext/ffi_c/Types.h
319
319
  - gen/Rakefile
320
- - lib/ffi.rb
321
- - lib/ffi/variadic.rb
320
+ - lib/ffi/io.rb
322
321
  - lib/ffi/managedstruct.rb
323
- - lib/ffi/ffi.rb
322
+ - lib/ffi/variadic.rb
324
323
  - lib/ffi/types.rb
325
- - lib/ffi/pointer.rb
326
- - lib/ffi/library.rb
327
- - lib/ffi/errno.rb
328
- - lib/ffi/io.rb
329
324
  - lib/ffi/autopointer.rb
325
+ - lib/ffi/enum.rb
326
+ - lib/ffi/errno.rb
330
327
  - lib/ffi/platform.rb
328
+ - lib/ffi/library.rb
331
329
  - lib/ffi/memorypointer.rb
332
- - lib/ffi/buffer.rb
333
- - lib/ffi/tools/generator.rb
334
- - lib/ffi/tools/types_generator.rb
330
+ - lib/ffi/ffi.rb
331
+ - lib/ffi/struct.rb
335
332
  - lib/ffi/tools/generator_task.rb
336
- - lib/ffi/tools/struct_generator.rb
333
+ - lib/ffi/tools/types_generator.rb
337
334
  - lib/ffi/tools/const_generator.rb
338
- - lib/ffi/struct.rb
335
+ - lib/ffi/tools/struct_generator.rb
336
+ - lib/ffi/tools/generator.rb
337
+ - lib/ffi/pointer.rb
339
338
  - lib/ffi/union.rb
340
- - lib/ffi/enum.rb
341
339
  - lib/ffi/callback.rb
342
- - spec/ffi/struct_callback_spec.rb
340
+ - lib/ffi/buffer.rb
341
+ - lib/ffi.rb
343
342
  - spec/ffi/union_spec.rb
344
- - spec/ffi/enum_spec.rb
345
- - spec/ffi/struct_initialize_spec.rb
343
+ - spec/ffi/variadic_spec.rb
344
+ - spec/ffi/library_spec.rb
345
+ - spec/ffi/callback_spec.rb
346
346
  - spec/ffi/string_spec.rb
347
- - spec/ffi/rbx/memory_pointer_spec.rb
347
+ - spec/ffi/enum_spec.rb
348
+ - spec/ffi/function_spec.rb
349
+ - spec/ffi/rbx/spec_helper.rb
348
350
  - spec/ffi/rbx/struct_spec.rb
351
+ - spec/ffi/rbx/memory_pointer_spec.rb
349
352
  - spec/ffi/rbx/attach_function_spec.rb
350
- - spec/ffi/rbx/spec_helper.rb
351
- - spec/ffi/errno_spec.rb
352
- - spec/ffi/typedef_spec.rb
353
- - spec/ffi/number_spec.rb
354
- - spec/ffi/bool_spec.rb
355
353
  - spec/ffi/struct_spec.rb
356
- - spec/ffi/buffer_spec.rb
357
- - spec/ffi/library_spec.rb
358
- - spec/ffi/managed_struct_spec.rb
359
- - spec/ffi/function_spec.rb
360
- - spec/ffi/variadic_spec.rb
354
+ - spec/ffi/struct_initialize_spec.rb
355
+ - spec/ffi/number_spec.rb
361
356
  - spec/ffi/spec_helper.rb
357
+ - spec/ffi/typedef_spec.rb
358
+ - spec/ffi/managed_struct_spec.rb
359
+ - spec/ffi/buffer_spec.rb
360
+ - spec/ffi/errno_spec.rb
361
+ - spec/ffi/struct_callback_spec.rb
362
362
  - spec/ffi/pointer_spec.rb
363
- - spec/ffi/callback_spec.rb
363
+ - spec/ffi/bool_spec.rb
364
364
  - spec/spec.opts
365
365
  - lib/1.8/ffi_c.so
366
366
  - lib/1.9/ffi_c.so
@@ -388,7 +388,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
388
388
  requirements: []
389
389
 
390
390
  rubyforge_project: ffi
391
- rubygems_version: 1.3.5
391
+ rubygems_version: 1.3.4
392
392
  signing_key:
393
393
  specification_version: 3
394
394
  summary: Ruby-FFI is a ruby extension for programmatically loading dynamic libraries, binding functions within them, and calling those functions from Ruby code