eix fails to find libstdc++-v3 package. Just take a look at the output: $ eix -c libstdc++ [I] sys-libs/libstdc++-v3 (3.3.6(5)@03.11.2008): Compatibility package for running binaries linked against a pre gcc 3.4 libstdc++ [N] sys-libs/libstdc++-v3-bin (--): Compatibility package for running binaries linked against a pre gcc 3.4 libstdc++ [I] virtual/libstdc++ (3.3(3.3)@14.07.2008): Virtual for the GNU Standard C++ Library Found 3 matches. $ eix -c libstdc++-v3 No matches found. $ eix -c libstdc++-v3-bin No matches found. bug reproducible with eix 0.14.2.
This is expected behavior: Your expression "libstdc++-v3" is interpreted as a regular expression, and "+" has a special meaning for such expressions. Either you must use some of the rules of regular expressions to avoid it (e.g. escape + [but be aware that the escape is not eaten by the shell] or replace it by .) or change the match algorithm e.g. by -p (and put * at the end).
Eh, true. Thanks for explanation... BTW, have you thought to add some kind of warning to user for this exact case (when ++ encountered)? It's obviously has not much sense to have ++ in regexp so if user requested ++ then quite possibly user wanted something different and if search revealed zero results output warning.
(In reply to comment #2) > BTW, have you thought to add some kind of warning to user This is the task of the regular expression library which eix uses, which may actually vary from system to system: If this library considers the expression as illegal, eix will even report an error (try e.g. eix '('). However, eix will not try to "correct" the results of that library (with one exception: the handling of empty expressions). In fact, the POSIX specification of (extended) regular expression leaves it explicitly unspecified whether several successive "+" are syntactically admissible ("c++" _might_ mean that the previous "c+" must occur one or several times). Since apparently the GNU library considers this case as OK, and so most other programs under GNU/Linux will also accept this case, it is just consistent that also eix will accept this case.