The regular expression that matches the version number of a utility
being queried is used as a constant expression in the current
implementation. Assigning the RE in question to a variable gives it a
meaningful name that clearly expresses the intended use of the expression
without having to think about the details of implementation.

Signed-off-by: Alexander Kapshuk <alexander.kaps...@gmail.com>
---
 scripts/ver_linux | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/scripts/ver_linux b/scripts/ver_linux
index a6c728db05ce..810e608baa24 100755
--- a/scripts/ver_linux
+++ b/scripts/ver_linux
@@ -13,6 +13,8 @@ BEGIN {
        system("uname -a")
        printf("\n")
 
+       vernum = "[0-9]+([.]?[0-9]+)+"
+
        printversion("GNU C", version("gcc -dumpversion"))
        printversion("GNU Make", version("make --version"))
        printversion("Binutils", version("ld -v"))
@@ -34,7 +36,7 @@ BEGIN {
        while (getline <"/proc/self/maps" > 0) {
                if (/libc.*\.so$/) {
                        n = split($0, procmaps, "/")
-                       if (match(procmaps[n], /[0-9]+([.]?[0-9]+)+/)) {
+                       if (match(procmaps[n], vernum)) {
                                ver = substr(procmaps[n], RSTART, RLENGTH)
                                printversion("Linux C Library", ver)
                                break
@@ -70,7 +72,7 @@ BEGIN {
 function version(cmd,    ver) {
        cmd = cmd " 2>&1"
        while (cmd | getline > 0) {
-               if (match($0, /[0-9]+([.]?[0-9]+)+/)) {
+               if (match($0, vernum)) {
                        ver = substr($0, RSTART, RLENGTH)
                        break
                }
-- 
2.20.1

Reply via email to