From bd618133879ccaa661cac0ae4ca4baaef72dad19 Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Sun, 5 Dec 2010 18:06:46 -0500 Subject: Typo fixes and more caveats. --- deheader.xml | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/deheader.xml b/deheader.xml index 4e227ee..68ee2b9 100644 --- a/deheader.xml +++ b/deheader.xml @@ -113,7 +113,7 @@ Takes a Python regular expression. -V -Show version of program snd exit. +Show version of program and exit. @@ -124,11 +124,19 @@ Takes a Python regular expression. Test-compiling after running with will sometimes show that this tool removed some headers that are actually required for your build. This happens because -deheader doesn't know about all the strange thungs +deheader doesn't know about all the strange things your build system gets up to, and the problem of analyzing it to -undertand them would be Turing-complete. Simply revert the altered +understand them would be Turing-complete. Simply revert the altered files and continue. +Due to minor variations in system headers, it is possible your +program may not port correctly to other Unix variants after being +deheadered. This is normally not a problem with the portion of the API +specified by POSIX and ANSI C, but may be for headers that are not +stndardized or only weakly standardized. The sockets API (sys/select.h, +sys/sockets.h, and friends such as sys/types.h and sys.stat.h) is +perhaps the most serious trouble spot. + Sufficiently perverse C++ can silently invalidate the simple algorithm this tool uses. Example: if an overloaded function has different overloads from two different files, removing one may expose -- cgit v1.2.3-70-g09d2