On 7/26/24 07:13, enh via Toybox wrote: >> Don't know Rob cares about this, but ?: is not ISO C. It's a GNU >> extension.
Specifically https://gcc.gnu.org/onlinedocs/gcc-14.1.0/gcc/Conditionals.html > with 80 existing uses of https://en.wikipedia.org/wiki/Elvis_operator > in toybox, i'm pretty sure rob knows this already :-) Yeah, and it's been discussed multiple times over the years, starting with http://lists.landley.net/pipermail/toybox-landley.net/2012-April/013359.html where we were already looking into the portability of it. I should try to dig something up to put in code.html but the decision way back when was "if the 2.6 kernel needed it to build, toybox is probably ok relying on it being there" because we exist in an ecosystem. (The fact I maintained a tinycc fork for 3 years trying to extend it to make tccboot work with current vanilla source may have influenced this. :) I _thought_ this was recorded somewhere in code.html or design.html but it's not the easiest thing to grep for. There's several links at https://landley.net/toybox/cleanup.html#advice but this isn't one of them... There's a couple others things like this, "int x=x;" to shut up the stupid gcc "is never used uninitialized" warnings comes to mind (although that's migrated to a QUIET macro that does conditional zero initialization)... Rob _______________________________________________ Toybox mailing list Toybox@lists.landley.net http://lists.landley.net/listinfo.cgi/toybox-landley.net