Currently, building dev-lang/jimtcl when it's already installed breaks, with a "*** buffer overflow detected ***: terminated" message. This is fixed in 0.82[1], but in order to prevent this issue and similar potential issues in the future, I'd consider *always* building a bootstrap shell. The file "autosetup/autosetup-find-tclsh", first looks for "./jimsh0" before trying the installed shell, and regular tclsh. If it finds none of them, it builds jimsh0 using "$CC_FOR_BUILD -o jimsh0 autosetup/jimsh0.c". I think replicating this build command in the ebuild would be simple enough. [1]: https://github.com/msteveb/jimtcl/issues/247
Perhaps a USE=system-bootstrap instead. But really, this was kind of a specific issue which needed resolving, no?
I think having different behavior between a clean install and an upgrade leads to hard to detect bugs like this one. Anyway, I'll be sending a PR in a bit.
(In reply to Esteve Varela Colominas from comment #2) > I think having different behavior between a clean install and an upgrade > leads to hard to detect bugs like this one. Anyway, I'll be sending a PR in > a bit. Yes, I changed my mind. Determinism is better.
commit 888388225a24e021a960694457ea0302dc417a90 Author: Esteve Varela Colominas <esteve.varela@gmail.com> Date: Wed Feb 28 17:17:14 2024 +0100 dev-lang/jimtcl: Bump to 0.82 Signed-off-by: Esteve Varela Colominas <esteve.varela@gmail.com> Closes: https://github.com/gentoo/gentoo/pull/34890 Signed-off-by: Joonas Niilola <juippis@gentoo.org>