type parser fixes
[m6w6/ext-psi] / src / libjit.c
index dd843949cd90afc92c9bc3ca8ee721dedae7fc63..8b9278ce0c072d4b4bc9c61cacb48184ff8b7b7a 100644 (file)
@@ -50,6 +50,10 @@ static inline jit_type_t psi_jit_token_type(token_t t) {
                return jit_type_sys_float;
        case PSI_T_DOUBLE:
                return jit_type_sys_double;
+#ifdef HAVE_LONG_DOUBLE
+       case PSI_T_LONG_DOUBLE:
+               return jit_type_sys_long_double;
+#endif
        case PSI_T_POINTER:
                return jit_type_void_ptr;
        }
@@ -69,13 +73,14 @@ static inline jit_type_t psi_jit_impl_type(token_t impl_type) {
        }
        return NULL;
 }
+
 static void psi_jit_struct_type_dtor(void *type) {
        jit_type_t strct = type;
 
        jit_type_free(strct);
 }
 
-static size_t psi_jit_struct_type_pad(jit_type_t **els, size_t padding) {
+static size_t psi_jit_struct_type_pad(jit_type_t *els, size_t padding) {
        size_t i;
 
        for (i = 0; i < padding; ++i) {
@@ -86,7 +91,7 @@ static size_t psi_jit_struct_type_pad(jit_type_t **els, size_t padding) {
 }
 
 static unsigned psi_jit_struct_type_elements(decl_struct *strct, jit_type_t **fields) {
-       size_t i, j, argc = strct->args->count, nels = 0, offset = 0, maxalign;
+       size_t i, argc = strct->args->count, nels = 0, offset = 0, maxalign;
        *fields = calloc(argc + 1, sizeof(*fields));
 
        for (i = 0; i < strct->args->count; ++i) {