According to PMS, function and variable names beginning with __ (two underscores) are reserved for package manager use. The following eclasses are using such reserved names for functions or variables: autotools.eclass: ___ECLASS_ONCE_AUTOTOOLS base.eclass: ___ECLASS_ONCE_BASE cdrom.eclass: ___ECLASS_ONCE_CDROM cmake-utils.eclass: ___ECLASS_ONCE_CMAKE_UTILS cvs.eclass: ___ECLASS_ONCE_CVS enlightenment.eclass: ___ECLASS_ONCE_ENLIGHTENMENT eutils.eclass: ___ECLASS_ONCE_EUTILS __estack_i __estack_name __estack_retvar fcaps.eclass: __FCAPS_WARNED ___ECLASS_ONCE_FCAPS fixheadtails.eclass: __do_sed_fix() flag-o-matic.eclass: ___ECLASS_ONCE_FLAG_O_MATIC games.eclass: ___ECLASS_ONCE_GAMES kde4-base.eclass: ___ECLASS_ONCE_KDE4_BASE kde4-functions.eclass: ___ECLASS_ONCE_KDE4_FUNCTIONS kde4-meta.eclass: __list_needed_subdirectories() ___ECLASS_ONCE_KDE4_META kde4-meta-pkg.eclass: ___ECLASS_ONCE_KDE4_META_PKG libtool.eclass: __ELT_NOTED_TMP ___ECLASS_ONCE_LIBTOOL multilib.eclass: __DEFAULT_ABI_SAVED ___ECLASS_ONCE_MULTILIB multiprocessing.eclass: ___ECLASS_ONCE_MULTIPROCESSING pam.eclass: ___ECLASS_ONCE_PAM pax-utils.eclass: ___ECLASS_ONCE_PAX_UTILS portability.eclass: ___ECLASS_ONCE_PORTABILITY qmake-utils.eclass: ___ECLASS_ONCE_QMAKE_UTILS readme.gentoo.eclass: ___ECLASS_ONCE_README_GENTOO toolchain-funcs.eclass: ___ECLASS_ONCE_TOOLCHAIN_FUNCS __thread unpacker.eclass: ___ECLASS_ONCE_UNPACKER user.eclass: ___ECLASS_ONCE_USER versionator.eclass: ___ECLASS_ONCE_VERSIONATOR I suggest to change all ___ECLASS_ONCE_<eclassname> to _<eclassname> (already used e.g. in git-r3.eclass and python eclasses). All other names can be truncated to start with one underscore only.
> I suggest to change all ___ECLASS_ONCE_<eclassname> to _<eclassname> Let's make this _<eclassname>_ECLASS, in order to avoid names like _USER or _PAM which look a bit dangerous.
Fixed.