From: Hans-Peter Nilsson Date: Wed, 22 Nov 2023 17:11:13 +0000 (+0100) Subject: contrib/regression/btest-gcc.sh: Handle multiple options. X-Git-Tag: basepoints/gcc-15~4336 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0ca1e90ae1a3b0ecb4ae90f9b785e618b295a3ff;p=thirdparty%2Fgcc.git contrib/regression/btest-gcc.sh: Handle multiple options. This is a long-standing bug: passing "-j --add-passes-despite-regression" or "--add-passes-despite-regression -j" caused the second option to be treated as TARGET; the first non-option parameter. * btest-gcc.sh (Option handling): Handle multiple options. --- diff --git a/contrib/regression/btest-gcc.sh b/contrib/regression/btest-gcc.sh index 1808fcc392fa..22e8f0398662 100755 --- a/contrib/regression/btest-gcc.sh +++ b/contrib/regression/btest-gcc.sh @@ -29,13 +29,16 @@ dashj='' # -j: # Pass '-j' to make. -case "$1" in - --add-passes-despite-regression) - add_passes_despite_regression=1; shift;; - -j*) - dashj=$1; shift;; - -*) echo "Invalid option: $1"; exit 2;; -esac +while : ; do + case "$1" in + --add-passes-despite-regression) + add_passes_despite_regression=1; shift;; + -j*) + dashj=$1; shift;; + -*) echo "Invalid option: $1"; exit 2;; + *) break;; + esac +done # TARGET is the target triplet. It should be the same one as used in # constructing PREFIX. Or it can be the keyword 'native', indicating