Eolian_Function_Parameter *param;
char buf[512];
+ static int _duplicates_warn = -1;
+ if (EINA_UNLIKELY(_duplicates_warn < 0))
+ {
+ const char *s = getenv("EOLIAN_WARN_FUNC_DUPLICATES");
+ if (!s) _duplicates_warn = 0;
+ else _duplicates_warn = atoi(s);
+ }
+
const Eolian_Function *ofunc = eina_hash_find(nhash, func->name);
- if (ofunc)
+ if (EINA_UNLIKELY(ofunc && (_duplicates_warn > 0)))
{
snprintf(buf, sizeof(buf),
- "function '%s' redefined (originally at %s:%d:%d)",
- func->name, ofunc->base.file,
+ "%sfunction '%s' redefined (originally at %s:%d:%d)",
+ func->is_beta ? "beta " : "", func->name, ofunc->base.file,
ofunc->base.line, ofunc->base.column);
- if (getenv("EOLIAN_WARN_FUNC_DUPLICATES"))
+ if (!func->is_beta || (_duplicates_warn > 1))
_obj_error(&func->base, buf);
}