ZheNing Hu wrote: > Sorry for the weird, unclean `memcasecmp()`, I referred to memcmp() > in glibc before, and then I was afraid that my writing was not standard > enough like "UCHAR_MAX <= INT_MAX", I can't consider such an > extreme situation. So I copied it directly from gnulib: > https://github.com/gagern/gnulib/blob/master/lib/memcasecmp.c Yeah, I imagined you copied it from somewhere, but when you do that you need to transform the code to the style of the project. I've seen GNU code, and in my opinion it's too verbose and redundant. Not a good style. But more importantly: at the header of that file you can see the license is GPLv3, that's incompatible with the license of this project, which is GPLv2 only (see the note in COPYING). You can't just copy code like that. You need to be careful. And if you do copy code--even if allowed by the license--it's something that should be mentioned in the commit message, preferably with a link to the original, that way if there's trouble in the future with that code, we can follow the link and figure out why it was done that way. Also, it's just nice to give attribution to the people that wrote the original code. > > Check the following resource for a detailed explanation of why my > > modified version is considered good taste: > > > > https://github.com/felipec/linked-list-good-taste > > OK. I will gradually standardize my code style. It is not a standard, it is my personal opinion, which is shared by Linus Torvalds, and I presume other members of the Git project. The style is not something that can be standardized, you get a feeling of it as you read more code of the project, write, and then receive feedback on what you write. It's like learning the slang of a new city; it takes a while. Cheers. -- Felipe Contreras