Skip to content
  • Ævar Arnfjörð Bjarmason's avatar
    tests: fix unportable "\?" and "\+" regex syntax · 4abf20f0
    Ævar Arnfjörð Bjarmason authored and Junio C Hamano's avatar Junio C Hamano committed
    Fix widely supported but non-POSIX basic regex syntax introduced in
    [1] and [2]. On GNU, NetBSD and FreeBSD the following works:
    
        $ echo xy >f
        $ grep 'xy\?' f; echo $?
        xy
        0
    
    The same goes for "\+". The "?" and "+" syntax is not in the BRE
    syntax, just in ERE, but on some implementations it can be invoked by
    prefixing the meta-operator with "\", but not on OpenBSD:
    
        $ uname -a
        OpenBSD obsd.my.domain 6.2 GENERIC#132 amd64
        $ grep --version
        grep version 0.9
        $ grep 'xy\?' f; echo $?
        1
    
    Let's fix this by moving to ERE syntax instead, where "?" and "+" are
    universally supported:
    
        $ grep -E 'xy?' f; echo $?
        xy
        0
    
    1. 2ed5c8e1 ("describe: setup working tree for --dirty", 2019-02-03)
    2. c801170b
    
     ("t6120: test for describe with a bare repository",
       2019-02-03)
    
    Signed-off-by: default avatarÆvar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    4abf20f0