Breaks with FEATURES=stricter: >>> Completed installing ejabberd-1.1.3 into /var/tmp/portage/net-im/ejabberd-1.1.3/image/ strip: i686-pc-linux-gnu-strip --strip-unneeded usr/lib/erlang/lib/ejabberd-1.1.3/priv/lib/ejabberd_zlib_drv.so usr/lib/erlang/lib/ejabberd-1.1.3/priv/lib/stringprep_drv.so usr/lib/erlang/lib/ejabberd-1.1.3/priv/lib/expat_erl.so usr/lib/erlang/lib/ejabberd-1.1.3/priv/lib/tls_drv.so * QA Notice: Package has poor programming practices which may compile * fine but exhibit random runtime failures. * expat_erl.c:81: warning: implicit declaration of function `x_fix_buff' !!! ERROR: net-im/ejabberd-1.1.3 failed. Call stack: misc-functions.sh, line 570: Called install_qa_check misc-functions.sh, line 325: Called die !!! poor code kills airplanes !!! If you need support, post the topmost build error, and the call stack if relevant. !!! A complete build log is located at '/var/tmp/portage/net-im/ejabberd-1.1.3/temp/build.log'. !!! install_qa_check failed; exiting.
Indeed, they used a function from deeper within ejabberd that is not in the regular headers. Stole the function declaration from a header and stuck it in directly. In portage as 1.1.3-r1
Deeper within *erlang*, ofcourse.