You can have a C that doesn't use glibc and doesn't have this problem. The question here is whether Rust, which in using the system libc will often use glibc on linux systems, has a way of working around this problem elegantly.
Would I want my init system written in Java or C#? Hell no. Would I want it written in Rust? Yes please maybe it will crash less and have fewer CVEs.
I have a belief that every time a C developer switches to Rust, users benefit (unless developer goes crazy from Rust's cognitive load, but this is a separate issue :) )
Side note: Who even started the whole "x is a system programming language" ? Who said you can't write "system software"[0] in just about any language that can (directly or indirectly) do "lower level" things. For example the MS Singularity OS has a virtual machine and all the drivers and everything is high level code.
>Would I want my init system written in Java or C#? Hell no. Would I want it written in Rust? Yes please maybe it will crash less and have fewer CVEs.
Contrary to popular belief init systems are simple and can be written in any language. Not to mention that when people talk about inits they don't think about the actual initialization part (mounting, setting network, etc) but about the starting of programs part. Those two things are similar from a far but are really not so much.
>I have a belief that every time a C developer switches to Rust, users benefit (unless developer goes crazy from Rust's cognitive load, but this is a separate issue :) )
I have a belief that people should make up their own mind and do whatever they want. This topic is about C and only about C. All other talk is "noise".
Note that i actually like programming in C as i like optimized programs, so i may be biased. (although not nearly as biased as the rust crowd)
[0] https://en.wikipedia.org/wiki/System_programming_language
Why do you get to decide? There are a lot of people in this thread talking about similar issues in other languages (Python, Rust, etc) and other functions (like fopen() and exit()). I think those discussions are very on-topic.
Why isn't this topic about "issues between threads and setenv in any language that uses glibc"?
Why isn't this topic about "issues between threads and other functions in any language that uses glibc"?
If you don't like a particular conversation in this topic, you can collapse it and move on.
One other comment got it right, it is annoying to have multiple rust comments in every thread about C.
But you are right, best way to deal with these kinds of... i don't want to be rude, is ignoring.
PS Thank you for addressing the rest of the comment, not just the part you made personal.
But that is not the point...
In this case, for example, the underlying issue (as usual) isn't "C language BAD!" it's that the function call isn't thread-safe. Which can happen in any language, including Rust.