Originally posted by indepe
View Post
The people did not notice the lines missing out of C90 is again "Assume= Makes a Ass out of U and Me." people assumed the missing lines where there and did not go through C90 with a fine tooth comb looking for errors in the reformat. Remember every line that is in C90 by itself read right for the C standard its the complete document is missing pieces completely. Remember the first correction in 1994 with C90 puts back into C90 8 complete miss pages of stuff that in C89 there was not a small amount missing here lot of it is stuff that is in K&R. The level of screw up in C90 is happens to be insane that at times leaves you scratching head how in heck did that get past but we have to live with the fact it did get past. Is even more insane how does the belief that C90=C89 remain. Does no one want to admit the C90 standard is screwed up. The first release of C90 was almost missing 5% of C89 that is a lot of document not there.
Yes a new developer adding code to a compiler may not be as versed in the language as you hope they are. Those people will depend on the standard/language define documents to be complete and correct. Bad things happen when those people pick up a defective standard/language define documents have a defect. This happened in the C90 time frame and this happened at the start of the C11 process. Yes as this is all made more likely by the incorrect assume that C89=C90.
PS the rank rules with C11 are screwed because of the same word Assume. They assume how a person is going to read the rank rules is the same as the implementation in front of them. Not that someone is going to read the rank rules and attempt to stuff it up. Or read the rank rules and get it wrong because they don't know the C language well.
Assume is one of the biggest causes of headaches.
Comment