]> git.saurik.com Git - cycript.git/blobdiff - sig/ffi_type.cpp
We no longer need to support the restrict keyword.
[cycript.git] / sig / ffi_type.cpp
index ab97f7a1b489f82ae8944e9d382ba311fcac91a4..04c68a135b5c40bc6a48d0af5b027a3a29825462 100644 (file)
@@ -48,6 +48,11 @@ ffi_type *Primitive<float>::GetFFI(CYPool &pool) const {
     return &ffi_type_float;
 }
 
+template <>
+ffi_type *Primitive<long double>::GetFFI(CYPool &pool) const {
+    return &ffi_type_longdouble;
+}
+
 template <>
 ffi_type *Primitive<double>::GetFFI(CYPool &pool) const {
     return &ffi_type_double;
@@ -171,9 +176,13 @@ ffi_type *Object::GetFFI(CYPool &pool) const {
 }
 #endif
 
+ffi_type *Enum::GetFFI(CYPool &pool) const {
+    return type.GetFFI(pool);
+}
+
 ffi_type *Aggregate::GetFFI(CYPool &pool) const {
-    // XXX: we can totally make overlap work
     _assert(!overlap);
+    _assert(signature.count != _not(size_t));
 
     ffi_type *ffi(new(pool) ffi_type());
     ffi->size = 0;