---
 eclass/flag-o-matic.eclass | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index b2f3742b3ecf..0393a30b74c3 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -433,11 +433,15 @@ test-flag-PROG() {
                # Use -c so we can test the assembler as well.
                -c -o /dev/null
        )
-       if "${cmdline[@]}" -x${lang} - </dev/null >/dev/null 2>&1 ; then
-               "${cmdline[@]}" "${flag}" -x${lang} - </dev/null >/dev/null 2>&1
+       if "${cmdline[@]}" -x${lang} - </dev/null &>/dev/null ; then
+               cmdline+=( "${flag}" -x${lang} - )
        else
-               "${cmdline[@]}" "${flag}" -c -o /dev/null /dev/null >/dev/null 
2>&1
+               # XXX: what's the purpose of this? does it even work with
+               # any compiler?
+               cmdline+=( "${flag}" -c -o /dev/null /dev/null )
        fi
+
+       "${cmdline[@]}" </dev/null &>/dev/null
 }
 
 # @FUNCTION: test-flag-CC
-- 
2.14.0


Reply via email to