sergio/takana
> Una distribución Linux construida con un laboratorio funcional y hermético en el > sótano, y una terminal mutable, clásica y anárquica en el piso de arriba — diseñada > desde el suelo para que una IA programadora entienda, modifique y co…
⎇ 6809ef4be28f606aae856890a74667187ff75b05
scripts/fixtures/sh-casos/08-trap-exit-y-estado.sh
Historia
crudo
simi: el /bin/sh propio del producto — 4448 líneas, sólo libc, y CERO divergencias contra el ash
1# `trap ... EXIT` + el estado de salida propagado: lo usan los scripts de la granja para limpiar.
2# Destapó reubeno/brush#1396: brush NO ejecuta nunca el trap EXIT de un subshell, en silencio y con
3# rc intacto. Upstream lo tenía marcado `known_failure` en trap.yaml:226 sin issue abierto.
4trap 'echo "trap-exit rc=$?"' EXIT
5( trap 'echo "trap-subshell"' EXIT; true )
6false
7echo "ultimo=$?"
8( trap 'echo "[heredado-no-debe-sonar]"' EXIT; true ) >/dev/null 2>&1
9# Y la otra mitad, que es la que POSIX §2.12 manda al revés: el trap HEREDADO se resetea al entrar
10# al subshell, así que el de arriba NO tiene que sonar acá. simi lo tenía mal en su primera versión
11# —lo disparaba— y el banco no lo veía porque ningún caso lo probaba. Ahora sí.
12( echo "subshell sin trap propio" )