diff --git a/lang/module.c b/lang/module.c index 15eafb2..985fe2f 100644 --- a/lang/module.c +++ b/lang/module.c @@ -12,13 +12,13 @@ #define ARRAY_SIZE(x) (sizeof(x) / sizeof(x[0])) // Use X macros to declare external module variables -#define X(id) extern ModuleInfo module_info_##id; +#define X(id) extern const ModuleInfo module_info_##id; #include #undef X // Use X macros to build a list of modules #define X(id) &module_info_##id, -static ModuleInfo *modules_list[] = { +static const ModuleInfo *modules_list[] = { #include }; #undef X @@ -151,7 +151,7 @@ struct module_stack *infos = &mapping->infos; struct object_stack *objs = &mapping->objects; for (int i = objs->next; i < infos->next; ++i) { - ModuleInfo *info = infos->elems[i]; + const ModuleInfo *info = infos->elems[i]; Object module = create_module(state, mapping, info); objs->elems[objs->next++] = module; } diff --git a/lang/module.h b/lang/module.h index 77f9599..1c9b588 100644 --- a/lang/module.h +++ b/lang/module.h @@ -26,7 +26,7 @@ Object (*create)(VmState state, Object *use_modules); }; -typedef const struct module_info ModuleInfo; +typedef struct module_info ModuleInfo; #endif