I think this hyphen is a typo; it's on line 34 of /etc/bash_completion: BASH_COMPLETION="${BASH_COMPLETION:-/etc/bash_completion}" If my bash is ok, the hyphen will cause the result of the attempted assignment to be false every time. The assignment on the following line uses the expected equals sign. (I've filed this under AMD64 because that's my platform, but the same typo also exists on my x86 box so perhaps it's on all platforms.) Reproducible: Always Steps to Reproduce: 1. 2. 3. $ emerge info Portage 2.0.53 (default-linux/amd64/2005.1, gcc-3.4.4, glibc-2.3.5-r0,glibc-2.3.5-r3, 2.6.14-gentoo-r2 x86_64) ================================================================= System uname: 2.6.14-gentoo-r2 x86_64 AMD Opteron(tm) Processor 246 Gentoo Base System version 1.12.0_pre11 ccache version 2.4 [enabled] dev-lang/python: 2.3.5, 2.4.2 sys-apps/sandbox: 1.2.11, 1.2.13 sys-devel/autoconf: 2.13, 2.59-r6, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5, 1.9.6-r1 sys-devel/binutils: 2.15.92.0.2-r10, 2.16-r1, 2.16.1-r1 sys-devel/libtool: 1.5.18-r1, 1.5.20-r1 virtual/os-headers: 2.6.11-r2, 2.6.11-r3 ACCEPT_KEYWORDS="amd64 ~amd64" AUTOCLEAN="no" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -march=opteron -mtune=opteron" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/X11/xdm/Xservers /etc/fonts /etc/gconf /etc/rc.d /etc/rsync /etc/terminfo /etc/wget /etc/env.d" CXXFLAGS="-O2 -march=opteron -mtune=opteron" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig buildpkg ccache distlocks sandbox sfperms strict userpriv usersandbox" GENTOO_MIRRORS="http://gentoo.blueyonder.co.uk http://ftp.easynet.nl/mirror/gentoo http://trumpetti.atm.tut.fi/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo http://ftp.uni-erlangen.de/pub/mirrors/gentoo http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo" LANG="en_GB.utf8" LC_ALL="en_GB.ISO-8859-15" LINGUAS="en_GB" MAKEOPTS="-j5" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://gaia.home/gentoo-portage" USE="amd64 X alsa audiofile avi bash-completion berkdb bitmap-fonts bzip2 cdr crypt cups curl directfb dvd eds emboss encode expat fbcon flac foomaticdb fortran gcj gif gimp gimpprint glut gphoto2 gpm gstreamer gtk gtk2 idn imlib ipv6 ithreads java jpeg kdeenablefinal lcms libcaca lzw lzw-tiff mad mng mp3 mpeg ncurses nls nptl nptlonly nsplugin nvidia ogg opengl pam pdflib perl png ppds python qt quicktime readline scanner sdl sox spell ssl tcpd tiff truetype truetype-fonts type1-fonts udev unicode usb userlocales vorbis wmf xine xml2 xmms xpm xprint xv zlib linguas_en_GB userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LDFLAGS
I don't see a problem here. If variable BASH_COMPLETION is set, nothing will change (BASH_COMPLETION=$BASH_COMPLETION), if it is not defined, it will get the value "/etc/bash_completion" See man bash (search for ":-" )
Not a bug.