]> Nishi Git Mirror - gwion.git/commitdiff
:bug: Fix enum shadowing
authorJérémie Astor <fennecdjay@gmail.com>
Sat, 19 Jun 2021 19:26:33 +0000 (21:26 +0200)
committerJérémie Astor <fennecdjay@gmail.com>
Sat, 19 Jun 2021 19:26:33 +0000 (21:26 +0200)
src/parse/scan1.c

index 4ee0a60a999487cf91dd9d1cbc9a4953fce6245a..4a812bb1453b5cd40f5db3e3f4440f095c4f59a4 100644 (file)
@@ -365,6 +365,8 @@ ANN m_bool scan1_enum_def(const Env env, const Enum_Def edef) {
   ID_List list = edef->list;
   do {
     CHECK_BB(already_defined(env, list->xid, edef->pos));
+    if(nspc_lookup_value1(edef->t->info->value->from->owner, list->xid))
+      ERR_B(edef->pos, "'%s' already defined", s_name(list->xid));
     const Value v = new_value(env->gwion->mp, edef->t, s_name(list->xid));
     valuefrom(env, v->from, edef->pos);
     if (env->class_def) {