SurferTim:
I think I got the avrlibc-1.7.1 libraries from savannah.nongnu.org when I found the bug in the compiled version. I know it is open source, and many people probably contributed, but I was hoping there would be remnants of that group around somewhere, and a central repository where the "official" version was located, so I guess that site is it?
I think so. That's the best I can tell, and there's at least activity on the mailing list.
So how does Atmel figure into this? They don't have their own compiler for their processor? They don't check to see if the code will compile anything before advertising it and offering it for download on their website?
I wish I knew. Vendors are quite varying in their contributions to Free Software. Some, such as IBM, contribute a lot. Oracle is a mixed bag, but they've contributed. Nvidia, AMD, Intel have made varying degrees of contribution. Last I looked -- admittedly quite a while back, Intel had their own C compiler for Linux, but they also at the least gave advice on things such as optimizations.
I have a lot of programming experience, but not much with the open source community. I am not familiar with how some of this works. Since I have a change now, should I just create and upload my own new version? Like avrlibc-1.7.2?
And about the bug in the Arduino code? Same there? I just make up my own new version? Arduino V0023?
EDIT: I have joined the savannah group for the avrlibc project and submitted the change.
Cool. You've taken part. And this, really, is part of the backbone of how this works. I've mentioned Eric S. Raymond's description of the Open Source community as a 'gift economy'. How it works is that people get software free, and if they have something to contribute, they give back. That can take the form of good bug reports, being a beta tester, writing docs, writing code, or even just donating money to support a product. Or helping out in support forums.
You can, in fact, make your own version. There's a process known as 'forking', which I won't go into in any detail, but it doesn't happen a lot. The canonical example, I suppose, is Emacs vs. Xemacs. The other really big fork recently was Xorg from X11. But most people will not fork a project until they've tried to work within the existing one. And, it's easier to submit your patch or suggestion, than it is to start hosting your own project anyway. Of course, if your patch is rejected, well, that's a bummer, but there might be a good reason for it too.