libs/wave/doc/class_reference_context.html: * code snippet after title, "Header wave/context.hpp synopsis", contains: template < typename IteratorT, typename LexIteratorT, typename InputPolicyT, typename TracePolicyT > class context : public InputPolicyT { public: typedef pp_iterator iterator_type; typedef TokenT token_type; yet: there is no TokenT in the template parameter list. Where does TokenT come from? In addition, the title suggests there's actually some code in file context.hpp; however, the closest name I could find was boost/wave/cpp_context.hpp, which does have similarly named template parameters, but no TokenT parameter either. Instead, there's LexIteratorT::token_type. The documentation must refer to an earlier version of cpp_context.hpp. * Under headers "Member functions"."Constructor", in paragraph 1, there's: it is not validated against the file system. refering to the "char const *filename" CTOR argument; however, it's unclear what "validated against the file system" means. If it means no check is made for file existence, then how can the following check: If this filename does not reference valid file system item , which is mentioned in the next paragraph, be done? * Paragraph 1 under heading, "Maintain include paths" contains "paths" misspelled as "pathes" * Under heading, "set_sysinclude_delimiter", there's this: Switches the mode, how the add_include_path() function operates. which, I think, should be: Switches the mode of how the add_include_path() function operates. Is there any way to switch it back to the default mode? Also, "set_sysinclude_delimiter" seems like a bad name for a function which affects affects the "mode" of add_include_path because "delimiter" is, at least in my mind, is something that separates some item from the next. * get_iteration_depth could be better named as get_include_depth, IMHO. * Under heading, "remove_macro_definition", the sentence: This operation is equivalent to an #undef directive with this name executed from within the input stream. at first reading, seems to indicate name is executed instead of #undef. It might be clearer reworded as: This operation is equivalent to: #undef name executed from within the input stream, except __LINE__ is not incremented. class_reference_inputpolicy.html: * Under heading, "Introduction" The phrase: is used for customizing the way, how an included file should be: is used for customizing the way an included file * Under heading, "Header wave/cpp_iteration_context.hpp synopsis" The sentence: The following code listing does not show the required interface only, but for brevity reasons the whole implementation of an input policy, which loads the given file into a string variable and exposes the begin() and end() iterators of this string to the Wave library. is a bit long and phrases: does not show the required interface only and: but for brevity reasons the whole implementation seem contradictory, because "for brevity" means you want the code to be short and showing just the interface would be shorter than the whole implementation. Do you mean that there is not a separate interface and implementation file (i.e. a .hpp and .cpp file) is for brevity reasons? If so, then I think the reader would be more interested in simply knowing how it works rather than why the code is not in separate files. IOW, there's no need to mention why the implementation is merged with the interface in the code listing. * Under heading, "init_iterators" The phrase: directive was found in the input token stream. is not a sentence. I'm guessing the directive is #include and there's something missing from the front of this phrase.