--- In Boost-Users@y..., "terekhov" <terekhov@d...> wrote:
--- In Boost-Users@y..., "bill_kempf" <williamkempf@h...> wrote:
--- In Boost-Users@y..., "terekhov" <terekhov@d...> wrote:
--- In Boost-Users@y..., "bill_kempf" <williamkempf@h...> wrote:
--- In Boost-Users@y..., Jon Kalb <kalb@L...> wrote:
At 7:57 PM +0000 1/5/02, bill_kempf wrote:
<string.h> is neither deprecated,
Appendix D.5 Standard C library headers [depr.c.headers] leads me to believe otherwise.
Splitting hairs. ...
No. Consider:
"These are deprecated features, where deprecated is defined as: Normative for the current edition of the Standard, but not guaranteed to be part of the Standard in future revisions."
But the features aren't deprecated, only the header is. In other words all the features of the deprecated <string.h> will live on in the non-deprecated <cstring>.
But the code might "suddenly" stop compile (1st: missing header; 2nd: global->std name space change) in X years from now and our build/packaging folks just have no idea what <string.h>/<cstring> is and even if they would know how to fix this "small" problem, they are not supposed/ allowed to modify my sources... so, do I want to get a call/fix it later? No! ;-)
This thread isn't really worth dragging on. I'll explain once more and then bow out. It was splitting hairs not because I'd correctly stated things. I hadn't. The <string.h> and other C headers are deprecated. It was splitting hairs because I'd clearly explained that use of <string.h> is still supported and fully standards conforming (deprecated features are still conforming, they are only reserved for possible removal in the future). Using <string.h> does not have the same issues as using <iostream.h>. Even though I'd used the wrong language, my very first posting should have made the distinction that <string.h> is conforming and <iostream.h> isn't quite clear. The correction posted ignored this distinction and only pointed out that the headers were in fact deprecated. This response, though more accurate than my original post, was "splitting hairs" in that by ignoring the entire basis of the thread it would lead those that didn't understand this to think that it was, in fact, non-conforming and unsafe to use <string.h> the same as it is for <iostream.h>. Hopefully everyone understands now and there will be no more need for discussion. Bill Kempf