On 2025-06-15, Laurent Bercot wrote:
Does the current execline git head fix it for you?
Yes, here's an strace for d7eb7a9.
execve("./t1", ["./t1"], ["PWD=/dev/shm", "SHLVL=1",
"PATH=/dev/shm/execline:/usr/loca"..., "_=/usr/bin/strace"]) = 0
execve("/dev/shm/execline/forbacktickx", ["forbacktickx", "-x", "0", "-E",
"line", " printf", " l1\nl2\nl3\nl2\n", "", "if", " eltest", " ${line}", " =",
" l2", "", "printf", "${line}\n"], ["PWD=/dev/shm", "SHLVL=1",
"PATH=/dev/shm/execline:/usr/loca"..., "_=/usr/bin/strace", "#=0", "0=./t1"]) = 0
execve("/dev/shm/execline/pipeline", ["pipeline", "--", " printf", "
l1\nl2\nl3\nl2\n", "", "unexport", "!", "forstdin", "-E", "-n", "-x", "0",
"--", "line", "fdmove", "0", "3", "if", " eltest", " ${line}", " =", " l2", "",
"printf", "${line}\n"], ["PWD=/dev/shm", "SHLVL=1",
"PATH=/dev/shm/execline:/usr/loca"..., "_=/usr/bin/strace", "#=0", "0=./t1"]) = 0
clone(child_stack=0xffffd73910c0, flags=CLONE_VM|CLONE_VFORK|SIGCHLDstrace:
Process 1082917 attached
<unfinished ...>
[pid 1082917] execve("/dev/shm/execline/printf", ["printf",
"l1\nl2\nl3\nl2\n"], ["PWD=/dev/shm", "SHLVL=1",
"PATH=/dev/shm/execline:/usr/loca"..., "_=/usr/bin/strace", "#=0", "0=./t1"]) =
-1 ENOENT (No such file or directory)
[pid 1082917] execve("/usr/local/sbin/printf", ["printf", "l1\nl2\nl3\nl2\n"],
["PWD=/dev/shm", "SHLVL=1", "PATH=/dev/shm/execline:/usr/loca"...,
"_=/usr/bin/strace", "#=0", "0=./t1"]) = -1 ENOENT (No such file or directory)
[pid 1082917] execve("/usr/local/bin/printf", ["printf", "l1\nl2\nl3\nl2\n"],
["PWD=/dev/shm", "SHLVL=1", "PATH=/dev/shm/execline:/usr/loca"...,
"_=/usr/bin/strace", "#=0", "0=./t1"]) = -1 ENOENT (No such file or directory)
[pid 1082917] execve("/usr/bin/printf", ["printf", "l1\nl2\nl3\nl2\n"],
["PWD=/dev/shm", "SHLVL=1", "PATH=/dev/shm/execline:/usr/loca"...,
"_=/usr/bin/strace", "#=0", "0=./t1"] <unfinished ...>
[pid 1082916] <... clone resumed>) = 1082917
[pid 1082917] <... execve resumed>) = 0
[pid 1082916] execve("/dev/shm/execline/unexport", ["unexport", "!",
"forstdin", "-E", "-n", "-x", "0", "--", "line", "fdmove", "0", "3", "if", "
eltest", " ${line}", " =", " l2", "", "printf", "${line}\n"], ["PWD=/dev/shm",
"SHLVL=1", "PATH=/dev/shm/execline:/usr/loca"..., "_=/usr/bin/strace", "#=0",
"0=./t1", "!=1082917"]) = 0
[pid 1082916] execve("/dev/shm/execline/forstdin", ["forstdin", "-E", "-n",
"-x", "0", "--", "line", "fdmove", "0", "3", "if", " eltest", " ${line}", " =",
" l2", "", "printf", "${line}\n"], ["PWD=/dev/shm", "SHLVL=1",
"PATH=/dev/shm/execline:/usr/loca"..., "_=/usr/bin/strace", "#=0", "0=./t1"]) = 0
[pid 1082916] clone(child_stack=0xfffff0a62210,
flags=CLONE_VM|CLONE_VFORK|SIGCHLDstrace: Process 1082918 attached
<unfinished ...>
[pid 1082917] +++ exited with 0 +++
[pid 1082918] execve("/dev/shm/execline/importas", ["importas", "-uSi", "--",
"line", "fdmove", "0", "3", "if", " eltest", " ${line}", " =", " l2", "",
"printf", "${line}\n"], ["PWD=/dev/shm", "SHLVL=1",
"PATH=/dev/shm/execline:/usr/loca"..., "_=/usr/bin/strace", "#=0", "0=./t1",
"line=l1"] <unfinished ...>
[pid 1082916] <... clone resumed>) = 1082918
[pid 1082918] <... execve resumed>) = 0
[pid 1082916] --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED,
si_pid=1082917, si_uid=1000, si_status=0, si_utime=0, si_stime=0} ---
[pid 1082918] execve("/dev/shm/execline/fdmove", ["fdmove", "0", "3", "if", "
eltest", " l1", " =", " l2", "", "printf", "l1\n"], ["PWD=/dev/shm", "SHLVL=1",
"PATH=/dev/shm/execline:/usr/loca"..., "_=/usr/bin/strace", "#=0", "0=./t1"]) = 0
[pid 1082918] execve("/dev/shm/execline/if", ["if", " eltest", " l1", " =", "
l2", "", "printf", "l1\n"], ["PWD=/dev/shm", "SHLVL=1",
"PATH=/dev/shm/execline:/usr/loca"..., "_=/usr/bin/strace", "#=0", "0=./t1"]) = 0
[pid 1082918] clone(child_stack=0xffffe620d520,
flags=CLONE_VM|CLONE_VFORK|SIGCHLDstrace: Process 1082919 attached
<unfinished ...>
[pid 1082919] execve("/dev/shm/execline/eltest", ["eltest", "l1", "=", "l2"],
["PWD=/dev/shm", "SHLVL=1", "PATH=/dev/shm/execline:/usr/loca"...,
"_=/usr/bin/strace", "#=0", "0=./t1"] <unfinished ...>
[pid 1082918] <... clone resumed>) = 1082919
[pid 1082919] <... execve resumed>) = 0
[pid 1082919] +++ exited with 1 +++
[pid 1082918] --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED,
si_pid=1082919, si_uid=1000, si_status=1, si_utime=0, si_stime=0} ---
[pid 1082918] +++ exited with 1 +++
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=1082918, si_uid=1000,
si_status=1, si_utime=0, si_stime=0} ---
clone(child_stack=0xfffff0a62210, flags=CLONE_VM|CLONE_VFORK|SIGCHLDstrace:
Process 1082920 attached
<unfinished ...>
[pid 1082920] execve("/dev/shm/execline/importas", ["importas", "-uSi", "--",
"line", "fdmove", "0", "3", "if", " eltest", " ${line}", " =", " l2", "",
"printf", "${line}\n"], ["PWD=/dev/shm", "SHLVL=1",
"PATH=/dev/shm/execline:/usr/loca"..., "_=/usr/bin/strace", "#=0", "0=./t1",
"line=l2"] <unfinished ...>
[pid 1082916] <... clone resumed>) = 1082920
[pid 1082920] <... execve resumed>) = 0
[pid 1082920] execve("/dev/shm/execline/fdmove", ["fdmove", "0", "3", "if", "
eltest", " l2", " =", " l2", "", "printf", "l2\n"], ["PWD=/dev/shm", "SHLVL=1",
"PATH=/dev/shm/execline:/usr/loca"..., "_=/usr/bin/strace", "#=0", "0=./t1"]) = 0
[pid 1082920] execve("/dev/shm/execline/if", ["if", " eltest", " l2", " =", "
l2", "", "printf", "l2\n"], ["PWD=/dev/shm", "SHLVL=1",
"PATH=/dev/shm/execline:/usr/loca"..., "_=/usr/bin/strace", "#=0", "0=./t1"]) = 0
[pid 1082920] clone(child_stack=0xffffe2496320,
flags=CLONE_VM|CLONE_VFORK|SIGCHLDstrace: Process 1082921 attached
<unfinished ...>
[pid 1082921] execve("/dev/shm/execline/eltest", ["eltest", "l2", "=", "l2"],
["PWD=/dev/shm", "SHLVL=1", "PATH=/dev/shm/execline:/usr/loca"...,
"_=/usr/bin/strace", "#=0", "0=./t1"] <unfinished ...>
[pid 1082920] <... clone resumed>) = 1082921
[pid 1082921] <... execve resumed>) = 0
[pid 1082921] +++ exited with 0 +++
[pid 1082920] --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED,
si_pid=1082921, si_uid=1000, si_status=0, si_utime=0, si_stime=0} ---
[pid 1082920] execve("/dev/shm/execline/printf", ["printf", "l2\n"],
["PWD=/dev/shm", "SHLVL=1", "PATH=/dev/shm/execline:/usr/loca"...,
"_=/usr/bin/strace", "#=0", "0=./t1"]) = -1 ENOENT (No such file or directory)
[pid 1082920] execve("/usr/local/sbin/printf", ["printf", "l2\n"],
["PWD=/dev/shm", "SHLVL=1", "PATH=/dev/shm/execline:/usr/loca"...,
"_=/usr/bin/strace", "#=0", "0=./t1"]) = -1 ENOENT (No such file or directory)
[pid 1082920] execve("/usr/local/bin/printf", ["printf", "l2\n"],
["PWD=/dev/shm", "SHLVL=1", "PATH=/dev/shm/execline:/usr/loca"...,
"_=/usr/bin/strace", "#=0", "0=./t1"]) = -1 ENOENT (No such file or directory)
[pid 1082920] execve("/usr/bin/printf", ["printf", "l2\n"], ["PWD=/dev/shm",
"SHLVL=1", "PATH=/dev/shm/execline:/usr/loca"..., "_=/usr/bin/strace", "#=0",
"0=./t1"]) = 0
[pid 1082920] +++ exited with 0 +++
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=1082920, si_uid=1000,
si_status=0, si_utime=0, si_stime=0} ---
+++ exited with 0 +++