2005-09-27 Zoltan Varga <vargaz@gmail.com>
[mono.git] / mono / metadata / verify.c
index ac2e79b56cc56788d77202f39a998f397630c8eb..dd963c0c0a9d5c115b99e206012c456376999d7f 100644 (file)
@@ -1157,7 +1157,7 @@ mono_method_verify (MonoMethod *method, int level)
                        (method->flags & (METHOD_ATTRIBUTE_PINVOKE_IMPL | METHOD_ATTRIBUTE_ABSTRACT))) {
                return NULL;
        }
-       signature = method->signature;
+       signature = mono_method_signature (method);
        header = mono_method_get_header (method);
        ip = header->code;
        end = ip + header->code_size;
@@ -1176,7 +1176,7 @@ mono_method_verify (MonoMethod *method, int level)
                params = signature->params;
        }
 
-       if (method->signature->is_inflated)
+       if (signature->is_inflated)
                generic_context = ((MonoMethodInflated *) method)->context;
 
        if (header->num_locals) {
@@ -1396,8 +1396,8 @@ mono_method_verify (MonoMethod *method, int level)
                        cmethod = mono_get_method_full (image, token, NULL, generic_context);
                        if (!cmethod)
                                ADD_INVALID (list, g_strdup_printf ("Method 0x%08x not found at 0x%04x", token, ip_offset));
-                       if (cmethod->signature->pinvoke) {
-                               csig = cmethod->signature;
+                       if (mono_method_signature (cmethod)) {
+                               csig = mono_method_signature (cmethod);
                        } else {
                                csig = mono_method_get_signature (cmethod, image, token);
                        }
@@ -1638,7 +1638,7 @@ mono_method_verify (MonoMethod *method, int level)
                        cmethod = mono_get_method_full (image, token, NULL, generic_context);
                        if (!cmethod)
                                ADD_INVALID (list, g_strdup_printf ("Constructor 0x%08x not found at 0x%04x", token, ip_offset));
-                       csig = cmethod->signature;
+                       csig = mono_method_signature (cmethod);
                        CHECK_STACK_UNDERFLOW (csig->param_count);
                        cur_stack -= csig->param_count;
                        CHECK_STACK_OVERFLOW ();
@@ -2225,7 +2225,8 @@ methodbuilder_fields[] = {
        {"pinfo", G_STRUCT_OFFSET (MonoReflectionMethodBuilder, pinfo)},
        {"pi_dll", G_STRUCT_OFFSET (MonoReflectionMethodBuilder, dll)},
        {"pi_entry", G_STRUCT_OFFSET (MonoReflectionMethodBuilder, dllentry)},
-       {"ncharset", G_STRUCT_OFFSET (MonoReflectionMethodBuilder, charset)},
+       {"charset", G_STRUCT_OFFSET (MonoReflectionMethodBuilder, charset)},
+       {"extra_flags", G_STRUCT_OFFSET (MonoReflectionMethodBuilder, extra_flags)},
        {"native_cc", G_STRUCT_OFFSET (MonoReflectionMethodBuilder, native_cc)},
        {"call_conv", G_STRUCT_OFFSET (MonoReflectionMethodBuilder, call_conv)},
        {NULL, 0}