C++-annotations (10.9.2)

  * Modified src/trim so that it can be used as stand-alone program.

  * Version and year information are now in the file VERSION: build programs
    updates the file yo/version.yo accordingly.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 18 Jan 2018 13:16:24 +0100

C++-annotations (10.9.1)

  * Various typos were corrected 

  * Removed the nbsp() macro from preamble.yo

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 18 Jan 2018 08:34:39 +0100

C++-annotations (10.9.0)

  * Added extensive coverage of system_error (chapters Exception, and Advanced
    Templates). 

  * Covered the namespace std::(experimental::)filesystem

  * Added the constructor expecting an initializer-list to the 
    std::string chapter (chapter 5).
  
  * Explicit references to the C++17 standard were removed.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Mon, 04 Dec 2017 17:22:06 +0100

C++-annotations (10.8.1)

  * Fixed additional typos uncovered by Amazon.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 08 Jun 2017 12:32:50 +0200

C++-annotations (10.8.0)

  * Added a new section (Introduction: upcoming C++17 features) providing an
     overview of new language features introduced by the C++17 standard

  * Many typos and suboptimally formulated statements were fixed, many of them
     very thoroughly compiled by Maurits Silvis.  

  * Coverage of (considered obsolete) binders and negators was discontinued.

  * Internally, the previously used script scripts/patchlatexidx is no longer
    required.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 08 Jun 2017 09:04:27 +0200

C++-annotations (10.7.2)

  * The section about implementing binary operators was fundamentally
    rewritten thanks to suggestions offered by Wiebe-Marten Wijnja.

  * The section covering the ::template syntax received an example showing how
    to call a static member function defined in a (base) class template from a
    class template that is derived from that (base) class template.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Sun, 12 Feb 2017 14:22:58 +0100

C++-annotations (10.7.1)

  * The section about implementing binary operators could somewhat be
    simplified. Also, some additional clarifications were added.

  * The SFINAE section was provided with explicit links to sections where the
    sfinae principle is used.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Sat, 04 Feb 2017 11:34:26 +0100

C++-annotations (10.7.0)

  * The sections about implementing binary operators received an overhaul.

  * The section `Adding binary operators to classes' was rewritten.

  * Added descriptions of operator new[](size) and operator delete[](pointer).

  * The section about lambda-expressions was extended with descriptions of new
    features offered by C++17.

  * The section `Pointer sizes' in the chapter about pointers to members
    contains an explanation as to why pointers to members are larger than
    ordinary pointers.

  * Added preview intro/cpp17.yo on the next C++17 standard.

  * Added a section about selection statements with initializers to the
    `First Impression Of C++' chapter.

  * Added a paragraph about increment/decrement operators being deprecated for
    bool type of variables to overloading/increment.yo.

  * Added a section about std::exchange to the Generic Algorithms chapter.

  * Added a section about `if constexpr' to the Function Templates chapter.

  * Added a section about folding expressions to the Class Templates chapter.

  * Added a section about class templates template argument deduction.

  * The section about using non-default constructors now contains thread-safe
    examples. 

  * Fixed several typos, processed several suggestions received from readers.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Sat, 28 Jan 2017 13:05:50 +0100

C++-annotations (10.6.0)

  * Added new section (Lvalues, rvalues and more, first/lvalues.yo) about
    various kinds of l/rvalues distinguished by C++.

  * Added new section (Standard Exceptions: to use or not to use?,
    exceptions/usestandard.yo) about the distinction between standard and
    non-standard exceptions.

  * Section 'Allocating arrays' (in chapter 'Classes and Memory Allocation')
    now describes how to initialize memory using the 'new Type[size]()'
    syntax. 

  * Section 'explicit conversion operators' (in chapter 'More Operator
    Overloading) received an overhaul.

  * Changed uses of shared_ptr objects to unique_ptr objects in
    stl/uniqueptr.yo. 

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Sun, 30 Oct 2016 10:25:03 +0100

C++-annotations (10.5.1)

  * Fixed various typos and completed several cosmetic modifications

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Sun, 24 Jul 2016 07:41:38 +0200

C++-annotations (10.5.0)

  * Rewrote the section about converting time to text, covering
    std::localtime, std::gmtime, std::put_time as well as the full table of
    put_time's format specifiers.

  * Removed the sections at the beginning of each chapter encouraging readers
    to send in suggestions for improvements. Instead, this encouragement is
    now shown at the end of the Annotation's `abstract'.
  
  * Updated the kindle-book conversion script, so that cplusplus.css is not
    used with the kindle book construction.

  * Several typos were fixed.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Wed, 23 Dec 2015 13:09:08 +0100

C++-annotations (10.4.1-pre)

  * Improved the html layout, following suggestions by Harmen Stoppels

  * Removed repeated 'mailus' files from chapter openings. The 'mailus' info
    is now shown as part of the abstract.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Sat, 19 Dec 2015 22:19:18 +0100

C++-annotations (10.4.0)

  * Added a section about reference bindings to the Overloading chapter

  * Added cplusplus.css which can be used to fine-tune the layout of the
    Annotatiions' html conversion.

  * Standardized the installation procedure

  * Fixed typos

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Sun, 11 Dec 2015 17:12:31 +0100

C++-annotations (10.3.0)

  * Added new sections about expression templates, about attributes,
    about shared mutexes,  about shared locks, about heterogeneous lookups,
    about sized deallocation functions, and about moving and swapping streams

  * Added new C++14 elements to relevant sections

  * Reorganized the section about lambda expression

  * Added the file ./compiler.im providing all #defines for compiling the
    support programs. See that file for specific information.

  * Fixed a compilation problem encountered with g++-5.

  * Fixed some typos.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Sun, 16 Aug 2015 15:21:10 +0200

C++-annotations (10.2.0)

  * Rewrote the sections covering the regular expression matching classes. 

  * The section about lambda expression also covers generic lambda
    expressions. 

  * The coverage of binders now concentrates on stl::bind.

  * Added a section about stl::placeholders to chapter 4 (Namespaces)

  * Removed superfluous 'return 0;' statements from main functions.

  * Conversion related stamp files (e.g., html-stamp) no longer
    used. Build-commands are now unconditionally executed.

  * Added a section to class templates covering a bare bones implementation of
    not_fn, which will likely be added in C++17.

  * Added some notes about C++17.

  * Several cosmetic improvements were made.

  * Html files now use html5.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 28 May 2015 12:06:01 +0200

C++-annotations (10.1.0)

  * Typos and added a section about regular expression, moving the topic from
    containers to stl.

  * Fixed various typos and inconsistencies

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Wed, 24 Dec 2014 19:54:28 +0100

C++-annotations (10.0.0)

  * Added new chapter: Multi Threading, containing all previously defined
    sections related to multi threading. A paragraph about std::distance was
    added, some typos were repaired, and other cosmetic changes were made to
    this version.

  * Redefined the standard verb(...) yodl macro by a version which does not do
    the extra newlines before and after the verbatim section.

  * The build script was extended. The support script `pathbuild' is not used,
    but can be used in cases where an additional element to PATH must be used.

  * All verbatim file inclusions are now run through the new release of
    yodlverbinsert. 

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 30 Oct 2014 20:17:12 +0100

C++-annotations (9.9.1)

  * Fixed LaTex formatting problems rendering (in particular) the
    cplusplusus.ps/pdf files (note: cplusplusUS) less useful (cf. scythal's
    user review on http://sourceforge.net/projects/cppannotations/).

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 05 Jun 2014 14:16:31 +0200

C++-annotations (9.9.0)

  * STL facilities for specifying absolute and relative time were rewritten
    and are now in a separate section, instead of using subsections of the
    section about Multi Threading. Sections about condition_variables were
    also rewritten.

  * c++0x has been replaced by c++11

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Tue, 03 Jun 2014 13:24:54 +0200

C++-annotations (9.8.2)

  * Extended and completed the list of available type traits (in section
    `Available Type Traits', chapter `Advanced Templates')

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Fri, 07 Mar 2014 14:49:22 +0100

C++-annotations (9.8.1)

  * Added explanatory paragraphs about using static_casts to derived classes
    using shared_ptr or unique_ptr objects holding pointers to base classes
    (cf. the class 'unique_ptr' and Casting shared pointers)

  * Added explanatory paragraphs about defining (const_)iterators and
    (const_)reverse_iterators (cf. 21.14.2: Implementing a
    `reverse_iterator').

  * Added an example showing how to declare a bound friend function template
    to a class template (cf. Templates instantiated for specific types as
    friends)

C++-annotations (9.8.0)

  * Added a section about static polymorphism to the class templates chapter

  * Removed the `text to anything convertor' section, which is now obsoleted
    by existing std::string conversion functions.

  * Removed the C++11 labels from section headers, as the C++11 standard has
    been implemented by g++ 4.8.2. Note that the --std=c++11 compiler flag is
    still required.

  * Several typos were fixed

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Sat, 18 Jan 2014 13:55:37 +0100

C++-annotations (9.7.3)

  * Fixed several typos.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Wed, 21 Aug 2013 15:00:30 +0200

C++-annotations (9.7.2)

  * Repaired some minor flaws, which were still waiting to be processed.

  * Added for internal use steps to create a Kindle version of the Annotations
    (see also http://www.amazon.com, look for ('c++ annotations')

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 30 May 2013 12:45:58 +0200

C++-annotations (9.7.1)

  * Added changes of 9.7.0 to the Annotations' `what's new' section

  * Release 9.7.0 was not published as a separate release.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 30 May 2013 09:43:34 +0200

C++-annotations (9.7.0)

  * Added several new sections about time specification (stl/time, etc.)

  * Added new section about 'this_thread' (stl/thisthread)

  * Added new section about locks (stl/locks)

  * Added new section (classes/ambiguity) about Ambiguity Resolution.

  * Added new section 'system_error' (exception/systemerror)

  * Added new section 'the class `error category'' (exception/errorcategory)

  * Added new section 'the class `error code'' (exception/errorcode)

  * Rewrote all sections about multi-threading)

  * Rewrote the section about lambda expressions

  * Replaced references to `ascii-z string' by `null terminated byte string'
    (NTBS), following the C++11 standard's terminology.

  * Repaired flaws in function names and return tyes of several sto* functions
    in string/convertors.yo 

  * `0b' constants are not mentioned in the C++11 standard (but maybe compiler 
    supported)

  * In section references `C++11, 4.7' the `, 4.7' was dropped

  * intro/main.yo was updated

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Wed, 29 May 2013 20:11:20 +0200

C++-annotations (9.6.0)

  * Updated the list of C++ keywords

  * Added advancedtemplates/noexcept.yo covering the noexcept keyword

  * Updated the string chapter

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 10 Jan 2013 20:23:05 +0100

C++-annotations (9.5.0)

  * Updated (to the current C++11 state) the reference of member functions of
    the Abstract Containers. 

  * Added a new section (Allocators) just before introducing the sequential
    containers. 

  * Rephrased sentenses like 'this member <verb>s' to '<verb>s', in particular
    in the chapter on Abstract Containers.

  * Repaired typos, reformulated the section about nested namespaces (Meir
    Shani). 

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Fri, 14 Dec 2012 12:53:53 +0100

C++-annotations (9.4.0)

  * Added new section make_shared in the stl chapter.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 28 Jun 2012 20:48:47 +0200

C++-annotations (9.3.0)

  * Coverage of the static_cast and reinterpret_cast was refined, following a
    suggestion provided by Gido Schoenmacker.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Tue, 06 Mar 2012 20:34:11 +0100

C++-annotations (9.2.1)

  * Starting this release all release tags (using names that are identical to
    the version number, so for this release the tag is 9.2.1) are signed to
    allow authentication.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Mon, 27 Feb 2012 13:42:38 +0100

9.2.0

  * Converted scanner generations from flex to flexc++

  * Rewrote the Concrete chapter's section about polymorphic semantic values

  * Rewrote the Containers chapter's section about unrestricted unions

  * Removed the Concrete chapter's section about unrestricted union semantic
    values 

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Sun, 26 Feb 2012 17:10:55 +0100

9.1.0

  * Added sections about features of C++11 now implemented in g++-4.7

  * Added a script to create a beautiful  C++ bound book

  * Repaired typos and stuff

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Fri, 20 Jan 2012 11:50:01 +0100

9.0.2

  * Removed excessive use of the verb 'will' from the Annotations. 

  * The required operators for each of the standard iterators (input,
    output, forward, bidirectional, random_access) are now explicitly
    mentioned in the paragraphs covering them.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Mon, 12 Sep 2011 16:01:07 +0200

9.0.1

  * Repaired some new annoying typos and slightly rephrased some paragraphs of
    the `Koenig lookup' section.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Wed, 20 Jul 2011 12:21:33 +0200

9.0.0

  * The form of move special members (move constructors, move assignment
    operators, other functions defining rvalue type parameters) was
    synchronized with the form proposed by the C++0x standard. This resulted,
    in the Annotations relaxing the principle of const-correctness, and in
    modifying the declarations and implementations of move special members in
    this release. This shift in position (adopted by the Annotations since
    its very early releases) profoundly affects much of the Annotation's
    contents, and warrants an upgrade to the next major release. See the
    remarks in the `what's new' file for more details.
    
  * Several sections were added and sometimes moved. The section about
    'unrestricted unions' was completed and moved to the `Containers'
    chapter, and an new section about adding binary operators to classes using
    function templates was added to the Annotations' final chapter (concrete
    examples).

  * Repaired badly formatted LaTeX table of contents: see bin/latexonly

  * Many typos were repaired

8.3.1

  * Many typos, textual corrections and clarifications were processed, almost
    all were provided by Francesco Poli.

  * Sections about move operations were split into subsections

  * The Portuguese translations are lagging too much behind. I've removed them
    from the source archives, although they remain available at the svn
    repository. 

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Mon, 20 Dec 2010 15:25:30 +0100

8.3.0

  * New sections about various (member) function adaptors 

  * Sections about statistical sampling functions added/modified

  * Sections referring to C++0x elements now assume g++ 4.4 is available and
    the required compiler version is no longer listed for those sections

  * Typos repaired

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Tue, 07 Sep 2010 12:12:18 +0200

8.2.0

  * Bumped up the version. Should have been done earlier, considering that the
    'what's new' file already refers to version 8.2.0.

  * Added 'export' to the list of keywords 

  * New typos and unclear passages were processed/improved

  * KNOWN ISSUE WITH THE PDF VERSION: Due to a known bug in the ps2pdf
    conversion the pdf versions of the Annotations may show multiple
        Error: Illegal entry in bfrange block in ToUnicode CMap
    error messages. Once the bug has been repaired a new sub-minor release of
    the Annotations will be made available.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 26 Aug 2010 09:03:37 +0200

8.1.2

  * New typos and unclear passages were processed/improved

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 06 May 2010 19:39:46 +0200

8.1.1

  * Many typos and minor cosmetic flaws that had escaped the previous update
    were processed 

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 11 Mar 2010 21:00:43 +0100

8.1.0 

  * The text and examples of the Annotations have completely been overhauled.
Before this final 8.1.0 release two pre-releases were issued, partially
completing the overhaul (see the two entries below) Over the years many
inconsistencies had crept into the text and examples, that are now removed;
streamlining the text and the examples.  All of the code examples have
received a work-over, removing endl in favor of '\n', making virtual functions
private, etc., etc. Many sections labeled C++0x were improved and sections in
the table of contents showing C++0x now also mention the g++ version in which
the new feature will be made available, using `?'  if this is as yet
unknown. No version is shown if the feature is already available in g++ 4.3
(or in one of its subreleases, like 4.3.3).  I received a host of suggestions
from Francesco Poli (thanks, Francesco (and several others), for all the
effort you've put into sending me those corrections).

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Mon, 01 Mar 2010 09:11:21 +0100

8.1.0~pre2

  * Cleanup completed until (including) chapter 16

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 24 Dec 2009 11:36:44 +0100

8.1.0~pre1  

  * Removed the 'template concepts' section from advancedtemplates: removed
    from the C++0x standard.
  * Started a cleanup operation on the C++ Annotations aiming at improving
    its internal consistency in examples and text. In this version 
    completed until (including) chapter 8.

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 05 Nov 2009 21:08:10 +0100

8.0.1   - Added --std=c++0x to the g++ compiler options

8.0.0   - New sections added describing elements of the new C++0x standard
          New chapters: name spaces, generic algorithm.
          The Portuguese translation of the Annotations (in the contributions
          directory) are still at version 7.0.0., Sergio Bacchi wrote that a
          new version is currently under construction.

7.3.1   - Readers are referred to sourceforge for the C++ Annotations archives

7.2.2   - Textual modifications and minor modifications of the programs due to 
          new Bobcat library.

7.0.1   - Processed extensive feedback received from Eric S. Raymond and 
          Edward Welbourne. Reorganized yo/string/members.yo. See the
          yo/history.yo file for details. 

7.0.0   - Added new chapter (advanced template applications) and changed
          many other things. See the yo/history.yo file for details.
            
6.5.0   - Changed all unsigned types to size_t (where appropriate)

          Added the Portuguese translation to the distribution, since Sergio
          Bacchi's acceptance was received

          Repaired various minor problems in compiling/running examples

          Moved in-class definitions of member functions to below their class

          Added paragraphs about size_t and other derived int-types and about
          implementing pure virtual member functions

6.4.1   - Legal restriction leftover removed from Chapter 2's introduction.
          Portuguese translation and `The history of C' removed from the
          distribution, until formal permission to include them is received
          from their authors. 

          Changes down to 6.2.4: see yo/history.yo

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Tue, 19 Sep 2006 13:03:29 +0200

6.2.4f  - fixed basic-type counting in par. 3.3

 -- Frank B. Brokken <f.b.brokken@rug.nl>  Thu, 07 Sep 2006 14:04:27 +0200

6.2.4   - See yo/history.yo
6.2.2   - See yo/history.yo
6.2.0   - See yo/history.yo
6.1.3(-pre)   Repaired several textual imperfections and delete -> delete []
          where new [] was used.
6.1.2. This file was defined to summarize intermediate modifications.
        - description of ios condition flags refined
        - description of string::getline() refined.
        - open_mode `creat' changed into `trunc' (reading and writing streams)

6.1.1b Minor textual modifications since 6.1.0
