2016-05-24  tino

	* [r11620] src/Cohort.cpp, src/Cohort.hpp, src/CohortIterator.cpp,
	  src/GrammarApplicator.cpp, src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runRules.cpp, src/MatxinApplicator.cpp,
	  src/NicelineApplicator.cpp: Magic constant -> DEP_NO_PARENT
	* [r11619] .travis.yml: Travis changed?
	* [r11618] src/TextualParser.cpp: Dead code

2016-05-23  tino

	* [r11613] src/MatxinApplicator.cpp, src/MatxinApplicator.hpp:
	  Format code

2016-05-23  ftyers

	* [r11603] src/MatxinApplicator.cpp: update so it gives full trees

2016-05-19  tino

	* [r11583] src/Grammar.cpp, src/TagTrie.hpp: Add KeepOrder if any
	  context uses varstrings or unification

2016-05-18  tino

	* [r11577] ChangeLog, src/GrammarApplicator_runGrammar.cpp,
	  src/version.hpp: Also add magic tag <<< in --dep-delimit mode

2016-05-13  ftyers

	* [r11551] src/MatxinApplicator.cpp, src/MatxinApplicator.hpp: fail
	  fast (well reasonably) if input contains subreadings

2016-05-13  tino

	* [r11550] src/MatxinApplicator.cpp: Substr that doesn't throw

2016-05-13  ftyers

	* [r11549] src/MatxinApplicator.cpp: fix whitespace handling
	* [r11548] src/MatxinApplicator.cpp: go back to for loop as substr
	  doesn't work

2016-05-13  tino

	* [r11547] get-boost.sh: Boost 1.61.0
	* [r11545] src/MatxinApplicator.cpp: Use substr to fix warning

2016-05-13  ftyers

	* [r11544] src/MatxinApplicator.cpp: rename field
	* [r11543] src/MatxinApplicator.cpp: lop off @

2016-05-13  tino

	* [r11541] src/MatxinApplicator.cpp, src/MatxinApplicator.hpp:
	  Printing to stdout is really not allowed

2016-05-12  ftyers

	* [r11539] src/MatxinApplicator.cpp, src/MatxinApplicator.hpp: some
	  formatting fixes
	* [r11538] src/MatxinApplicator.cpp: there is no pos field, and
	  also number sentences

2016-05-12  tino

	* [r11537] src/MatxinApplicator.cpp, src/MatxinApplicator.hpp:
	  Printing to stdout is not allowed
	* [r11536] src/FormatConverter.cpp: Reorder init
	* [r11535] src/MatxinApplicator.cpp, src/MatxinApplicator.hpp,
	  src/cg_proc.cpp: Attempt to inject history; Reformat

2016-05-12  ftyers

	* [r11534] src/ApertiumApplicator.cpp, src/CMakeLists.txt,
	  src/FormatConverter.cpp, src/FormatConverter.hpp,
	  src/MatxinApplicator.cpp, src/MatxinApplicator.hpp,
	  src/all_cg_conv.cpp, src/all_cg_proc.cpp, src/cg_proc.cpp,
	  src/options_conv.hpp: first version of the MatxinApplicator,
	  still quite a bit of work to do

2016-05-12  tino

	* [r11533] ChangeLog, src/ApertiumApplicator.cpp, src/cg_proc.cpp,
	  src/version.hpp: Fix cg-proc leak; Allow cg-proc to use textual
	  grammars, but with a warning

2016-04-14  unhammer

	* [r11459] emacs/cg.el: cg-calculate-indent was returning wrong val

2016-04-13  tino

	* [r11458] src/CMakeLists.txt: Test failed due to renamed tests

2016-04-11  tino

	* [r11456] src/GrammarApplicator.cpp: Print rule number where
	  possible
	* [r11455] test/Apertium/T_Append, test/Apertium/T_BasicAppend,
	  test/Apertium/T_BasicContextTest, test/Apertium/T_BasicDelimit,
	  test/Apertium/T_BasicIff, test/Apertium/T_BasicRemove,
	  test/Apertium/T_BasicSelect, test/Apertium/T_BasicSubstitute,
	  test/Apertium/T_ContextTest, test/Apertium/T_Delimit,
	  test/Apertium/T_Iff, test/Apertium/T_Remove,
	  test/Apertium/T_Select, test/Apertium/T_Substitute,
	  test/T_Append, test/T_BasicAppend, test/T_BasicContextTest,
	  test/T_BasicDelimit, test/T_BasicDependency, test/T_BasicIff,
	  test/T_BasicSelect, test/T_BasicSubstitute, test/T_ContextTest,
	  test/T_Delimit, test/T_Dependency, test/T_Iff, test/T_Select,
	  test/T_Substitute: Rename tests
	* [r11454] ChangeLog, src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runRules.cpp, src/TextualParser.cpp,
	  src/version.hpp, test/T_BasicAppend/expected.txt,
	  test/T_BasicAppend/grammar.cg3,
	  test/T_BasicAppend/grammar.cg3b.10043: Append, AddCohort,
	  SplitCohort now performs their tag checks only at runtime

2016-04-07  unhammer

	* [r11440] emacs/cg.el: fix indentation where wordform before rule
	  keyword

2016-04-06  tino

	* [r11439] src/GrammarApplicator.cpp: At runtime, print numLines

2016-04-04  tino

	* [r11433] .clang-format, clang-format.pl,
	  src/GrammarApplicator_runRules.cpp, src/Set.hpp, src/inlines.hpp:
	  clang-format-3.9

2016-03-30  tino

	* [r11431] README.md: Gotta catch them all

2016-03-29  unhammer

	* [r11430] emacs/cg.el: (require 'cl-lib) ;; assume users have
	  emacs>=24.3
	  
	  + lots of checkdoc-fixes
	* [r11429] emacs/cg.el: compilation warnings now have filename
	  prepended

2016-03-23  tino

	* [r11423] manual/rules.xml: Fix Substitute documentation
	* [r11421] src/GrammarApplicator_runRules.cpp: No, that wasn't a
	  problem
	* [r11420] src/GrammarApplicator_runRules.cpp: Substitute should
	  not remove tags if it can't later replace them

2016-03-22  tino

	* [r11416] ChangeLog, src/GrammarApplicator.cpp,
	  src/GrammarApplicator.hpp, src/GrammarApplicator_runRules.cpp,
	  src/Strings.cpp, src/version.hpp,
	  test/T_BasicSubstitute/expected.txt: Substitute will now insert
	  in all found locations, if the tags to be replaced were found
	  contiguously in those locations

2016-03-03  tino

	* [r11383] manual/grammar.xml: Section name example

2016-03-01  tino

	* [r11374] src/libcg3.cpp, src/stdafx.hpp: Things no longer
	  relevant in VS 2015

2016-02-23  tino

	* [r11351] ChangeLog, src/GrammarApplicator_runRules.cpp,
	  src/version.hpp: Remove Substitute unique test

2016-02-11  tino

	* [r11341] src/GrammarApplicator_runGrammar.cpp: Fix B with -D

2016-02-09  tino

	* [r11340] src/Tag.cpp: Don't even try to parse very long tags as
	  numeric

2016-02-08  tino

	* [r11338] ChangeLog, src/GrammarApplicator_matchSet.cpp,
	  src/version.hpp: Even more undo regex captures on match fail

2016-02-05  tino

	* [r11329] manual/contexts.xml: Greedy and lazy bag
	* [r11327] ChangeLog, manual/contexts.xml,
	  src/BinaryGrammar_read.cpp, src/BinaryGrammar_write.cpp,
	  src/ContextualTest.hpp, src/Grammar.cpp, src/Grammar.hpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/SingleWindow.cpp, src/SingleWindow.hpp,
	  src/TextualParser.cpp, src/version.hpp,
	  test/T_BasicDependency/expected.txt,
	  test/T_BasicDependency/grammar.cg3,
	  test/T_BasicDependency/grammar.cg3b.10043: Implement Bag of Tags
	* [r11325] src/GrammarApplicator_reflow.cpp: Silly if

2016-01-26  tino

	* [r11265] manual/rules.xml: KeepOrder doc
	* [r11264] ChangeLog, manual/manual.xml, src/AST.hpp,
	  src/ApertiumApplicator.cpp, src/ApertiumApplicator.hpp,
	  src/BinaryGrammar.cpp, src/BinaryGrammar.hpp,
	  src/BinaryGrammar_read.cpp, src/BinaryGrammar_write.cpp,
	  src/Cohort.cpp, src/Cohort.hpp, src/CohortIterator.cpp,
	  src/CohortIterator.hpp, src/ContextualTest.cpp,
	  src/ContextualTest.hpp, src/FSTApplicator.cpp,
	  src/FSTApplicator.hpp, src/FormatConverter.cpp,
	  src/FormatConverter.hpp, src/Grammar.cpp, src/Grammar.hpp,
	  src/GrammarApplicator.cpp, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runGrammar.cpp,
	  src/GrammarApplicator_runRules.cpp, src/GrammarWriter.cpp,
	  src/GrammarWriter.hpp, src/IGrammarParser.hpp,
	  src/NicelineApplicator.cpp, src/NicelineApplicator.hpp,
	  src/PlaintextApplicator.cpp, src/PlaintextApplicator.hpp,
	  src/Reading.cpp, src/Reading.hpp, src/Relabeller.cpp,
	  src/Relabeller.hpp, src/Rule.cpp, src/Rule.hpp, src/Set.cpp,
	  src/Set.hpp, src/SingleWindow.cpp, src/SingleWindow.hpp,
	  src/Strings.cpp, src/Strings.hpp, src/Tag.cpp, src/Tag.hpp,
	  src/TagTrie.hpp, src/TextualParser.cpp, src/TextualParser.hpp,
	  src/Window.cpp, src/Window.hpp, src/bloomish.hpp,
	  src/cg-relabel.cpp, src/cg3.h, src/cg_comp.cpp, src/cg_conv.cpp,
	  src/cg_proc.cpp, src/flat_unordered_map.hpp,
	  src/flat_unordered_set.hpp, src/inlines.hpp,
	  src/interval_vector.hpp, src/istream.hpp, src/libcg3.cpp,
	  src/main.cpp, src/options.hpp, src/options_conv.hpp,
	  src/parser_helpers.hpp, src/process.hpp, src/scoped_stack.hpp,
	  src/sorted_vector.hpp, src/stdafx.hpp, src/test_libcg3.c,
	  src/uextras.cpp, src/uextras.hpp, src/version.hpp: Copyright and
	  rev bump

2016-01-25  tino

	* [r11254] src/Grammar.cpp, src/Set.hpp: Dirty way to add KEEPORDER
	  where it is likely missing

2016-01-11  tino

	* [r11203] src/FSTApplicator.cpp: Handle trailing + in baseforms

2015-12-17  tino

	* [r11144] ChangeLog, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runContextualTest.cpp, src/version.hpp: In
	  barrier context, don't test links

2015-12-03  tino

	* [r11104] ChangeLog, src/Cohort.cpp, src/version.hpp: Fix segfault

2015-11-27  tino

	* [r11079] CMakeLists.txt: Apply ELISPDIR patch from Alex Dunn
	  <dunn.alex@gmail.com> to aid Homebrew packaging

2015-11-16  tino

	* [r11069] ChangeLog, TODO, src/GrammarApplicator_runRules.cpp,
	  src/version.hpp, test/T_RegExp/expected.txt,
	  test/T_RegExp/grammar.cg3, test/T_RegExp/grammar.cg3b.10043,
	  test/T_RegExp/input.txt: Propagate regexp captures to other
	  readings

2015-11-12  tino

	* [r11056] README, README.md: Add badge
	* [r11055] .travis.yml: But then clang doesn't work, of course
	* [r11054] .travis.yml: Le sigh...
	* [r11053] .travis.yml: Try Travic CI's container setup
	* [r11052] .travis.yml: Try a different CMake PPA
	* [r11051] .travis.yml: Wasn't prepared for Ubuntu 12.04
	* [r11050] .travis.yml: Let's see if Travis CI works...

2015-11-10  tino

	* [r11048] .clang-format, clang-format.pl,
	  src/GrammarApplicator_runRules.cpp, src/cg_proc.cpp: clang-format
	  now gets Egyptian braces right

2015-11-05  tino

	* [r11038] src/cg_proc.cpp: Flush flush

2015-11-03  tino

	* [r11034] src/GrammarApplicator_runContextualTest.cpp: Don't clear
	  readings again if we're at the current target
	* [r11032] ChangeLog, manual/contexts.xml,
	  src/GrammarApplicator.hpp, src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runRules.cpp, src/version.hpp,
	  test/T_BasicSelect/expected.txt, test/T_BasicSelect/grammar.cg3,
	  test/T_BasicSelect/grammar.cg3b.10043: Context modifier 'A' now
	  works almost anywhere

2015-10-31  tino

	* [r11024] src/ApertiumApplicator.cpp, src/GrammarApplicator.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runRules.cpp, src/PlaintextApplicator.cpp,
	  src/TextualParser.cpp, src/cg_proc.cpp, src/parser_helpers.hpp,
	  src/process.hpp: Fixed based on Coverity Scan report - nothing
	  that would ever affect real world execution

2015-10-14  tino

	* [r10993] ChangeLog, src/GrammarApplicator_runContextualTest.cpp,
	  src/sorted_vector.hpp, src/version.hpp: Failure to find r,l
	  should set result to false, and thus let NONE/NOT work as
	  expected

2015-09-29  tino

	* [r10984] CMakeLists.txt: Better C++17/14/11 detection that also
	  works
	* [r10983] CMakeLists.txt: Better C++17/14/11 detection

2015-09-23  tino

	* [r10982] manual/rules.xml, todo.sh: Documented SplitCohort

2015-09-22  tino

	* [r10980] src/GrammarApplicator_runRules.cpp: RemCohort segfault
	* [r10979] src/GrammarApplicator_runGrammar.cpp,
	  test/T_SplitCohort/expected.txt, test/T_SplitCohort/grammar.cg3:
	  Special case initial setvars so that delimiters can see them;
	  SplitCohort test
	* [r10978] src/GrammarApplicator_runRules.cpp: SplitCohort handle
	  named relations
	* [r10977] ChangeLog, clang-format.pl,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runRules.cpp, src/scoped_stack.hpp,
	  src/version.hpp: Fix unification across contexts when there is no
	  unification in target or capture
	* [r10976] src/CMakeLists.txt, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runRules.cpp, src/Rule.hpp, src/Set.hpp,
	  src/Tag.hpp, src/cg_proc.cpp, src/scoped_stack.hpp: Code cleanup,
	  a bit less actual static but more reuse

2015-09-21  tino

	* [r10975] .editorconfig, src/Cohort.hpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/SingleWindow.hpp: WIP kill global_number

2015-09-19  tino

	* [r10967] src/GrammarApplicator_runRules.cpp: Erase all knowledge
	  of a removed cohort from the dep tree
	* [r10966] src/GrammarApplicator_runRules.cpp: Looping over a
	  container while modifying it is generally a horrible idea
	* [r10964] ChangeLog, src/GrammarApplicator.cpp,
	  src/GrammarApplicator.hpp, src/version.hpp,
	  test/T_Omniscan/expected.txt: When dep has spanned, output in the
	  form of window number + padded local number, rather than global
	  number
	* [r10963] src/GrammarApplicator_runRules.cpp: Properly detach
	  removed cohorts from the dependency tree

2015-09-18  tino

	* [r10961] src/GrammarApplicator_reflow.cpp: Fix segfault
	* [r10958] ChangeLog, manual/rules.xml, src/Cohort.hpp,
	  src/CohortIterator.cpp, src/CohortIterator.hpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runRules.cpp, src/SingleWindow.hpp,
	  src/version.hpp: Fix cohort ordering to be reliable across
	  movement, insertion, removal, etc

2015-09-16  tino

	* [r10955] ChangeLog, src/Tag.cpp, src/version.hpp,
	  test/T_NumericalTags/expected.txt: Fix bug where e.g. <C:NN> was
	  considered numerical with value 0

2015-09-14  tino

	* [r10952] ChangeLog, src/GrammarApplicator_runRules.cpp,
	  src/Strings.cpp, src/Strings.hpp, src/TextualParser.cpp,
	  src/version.hpp, test/T_SplitCohort,
	  test/T_SplitCohort/expected.txt, test/T_SplitCohort/grammar.cg3,
	  test/T_SplitCohort/input.txt: Implement SplitCohort

2015-09-08  tino

	* [r10939] src/Cohort.hpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/SingleWindow.hpp: CentOS 6 fix

2015-09-07  tino

	* [r10938] TODO: ToDone
	* [r10937] ChangeLog, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runRules.cpp, src/inlines.hpp,
	  src/version.hpp: Make template ORs fully commutative

2015-08-30  tino

	* [r10925] src/TextualParser.cpp, src/inlines.hpp: Easier to read
	  parsing

2015-08-26  unhammer

	* [r10923] test/T_RelabelList_Apertium/expected.txt: doh, flip the
	  expected bit

2015-08-26  tino

	* [r10922] test/T_RelabelList/run.pl, test/T_RelabelSet/run.pl: Use
	  -I and -O instead of < and >, to avoid Windows pipe conversion

2015-08-26  unhammer

	* [r10921] src/Relabeller.cpp, src/Relabeller.hpp: allow replacing
	  tags with baseforms
	  
	  remove the special case for singletag->singletag relabelling, it
	  wasn't transferring flags (T_BASEFORM) and it's handled by the
	  relabel_as_list case anyway
	* [r10920] test/T_RelabelList_Apertium,
	  test/T_RelabelList_Apertium/expected.txt,
	  test/T_RelabelList_Apertium/grammar.cg3,
	  test/T_RelabelList_Apertium/input.txt,
	  test/T_RelabelList_Apertium/relabel.cg3r,
	  test/T_RelabelList_Apertium/run.pl: test that fails with cg-proc
	  
	  (loops forever looking for a baseform relabelled by a
	  non-T_BASEFORM tag)

2015-08-26  tino

	* [r10919] src/AST.hpp, src/CMakeLists.txt, src/TextualParser.cpp,
	  src/TextualParser.hpp, src/stdafx.hpp: Print contents of textual
	  AST nodes

2015-08-25  tino

	* [r10917] ChangeLog, TODO, src/BinaryGrammar.hpp,
	  src/BinaryGrammar_read.cpp, src/version.hpp: OR'ed contexts also
	  need deferred loading

2015-08-23  tino

	* [r10910] clang-format.pl, src/BinaryGrammar.cpp, src/Grammar.hpp,
	  src/GrammarApplicator_runContextualTest.cpp, src/inlines.hpp:
	  Statement-final * format

2015-08-23  unhammer

	* [r10909] test/T_Relabel: rm empty dir

2015-08-23  tino

	* [r10908] ChangeLog, clang-format.pl, src/BinaryGrammar.cpp,
	  src/BinaryGrammar.hpp, src/Cohort.hpp, src/GrammarApplicator.hpp,
	  src/Relabeller.cpp, src/Relabeller.hpp, src/Rule.hpp,
	  src/Set.hpp, src/Tag.hpp, src/TagTrie.hpp, src/TextualParser.cpp,
	  src/TextualParser.hpp, src/cg-relabel.cpp, src/libcg3.cpp,
	  src/version.hpp: Fix formatting, auto_ptr

2015-08-23  unhammer

	* [r10907] src/Relabeller.cpp, src/Relabeller.hpp, src/Set.cpp,
	  src/Set.hpp: more trie_reindex to Set.hpp; cleanup
	* [r10906] src/Relabeller.cpp: more warnings if weird relabel
	  grammar
	* [r10905] src/Relabeller.hpp: rm unused debug function
	* [r10904] src/Relabeller.cpp, src/Relabeller.hpp,
	  test/T_RelabelSet/expected.txt, test/T_RelabelSet/grammar.cg3,
	  test/T_RelabelSet/input.txt, test/T_RelabelSet/relabel.cg3r:
	  support for relabelling into a SET (with e.g. lista - listb)
	* [r10903] src/Relabeller.cpp, src/Relabeller.hpp: some refactoring
	* [r10902] src/Relabeller.cpp, src/Relabeller.hpp: some cleanup and
	  notes
	* [r10901] src/Relabeller.cpp: s/for(auto)/boost_foreach(boring)/g
	  to please our CentOS users
	* [r10900] src/Relabeller.cpp, src/cg-relabel.cpp: exit(1) unless
	  first arg is a cg3b; less verbose
	* [r10899] test/T_Relabel/expected.txt, test/T_Relabel/grammar.cg3,
	  test/T_Relabel/input.txt, test/T_Relabel/relabel.cg3r,
	  test/T_Relabel/run.pl, test/T_RelabelList,
	  test/T_RelabelList/expected.txt, test/T_RelabelList/grammar.cg3,
	  test/T_RelabelList/input.txt, test/T_RelabelList/relabel.cg3r,
	  test/T_RelabelList/run.pl, test/T_RelabelSet,
	  test/T_RelabelSet/expected.txt, test/T_RelabelSet/grammar.cg3,
	  test/T_RelabelSet/input.txt, test/T_RelabelSet/relabel.cg3r,
	  test/T_RelabelSet/run.pl: update tests for bin cg-relabel
	* [r10898] src/cg-relabel.cpp: Warn on on textual grammars handed
	  to cg-relabel
	* [r10897] src/CMakeLists.txt, src/Relabeller.cpp,
	  src/Relabeller.hpp, src/cg-relabel.cpp, test/T_Relabel,
	  test/T_Relabel/expected.txt, test/T_Relabel/grammar.cg3,
	  test/T_Relabel/input.txt, test/T_Relabel/relabel.cg3r,
	  test/T_Relabel/run.pl: cg-relabel command using binary grammars
	  
	  New relabel format (ab)using vislcg3 format: MAP (N) (n) OR (np)
	  ; means relabel the tag N into n or np, alternatively: LIST N = n
	  np; MAP (N) N;
	  
	  The from-part is only ever one tag, but the to-part can be
	  several. Full-on SET's as to-parts still TODO, but should be
	  doable.
	  
	  No longer uses GrammarWriter at all.
	  
	  Some cleanup TODO.

2015-08-21  tino

	* [r10893] src/TextualParser.cpp: Move AST Contexts and
	  ContextsTarget
	* [r10892] ChangeLog, src/TextualParser.cpp, src/TextualParser.hpp,
	  src/main.cpp, src/options.hpp, src/options_conv.hpp,
	  src/version.hpp: Added cmdline --dump-ast to output grammar parse
	  tree

2015-08-19  tino

	* [r10891] ChangeLog, src/GrammarApplicator_runRules.cpp,
	  src/TextualParser.cpp, src/version.hpp,
	  test/T_BasicIff/grammar.cg3, test/T_MultipleSections/grammar.cg3,
	  test/T_Trace/grammar.cg3: Warn if a rule doesn't end in ;

2015-08-19  unhammer

	* [r10890] emacs/cg.el: new cg-comment-or-uncomment function, bound
	  to C-; and M-#
	  
	  demo at https://asciinema.org/a/25236
	  
	  also, fix M-a/M-e so they don't fail if there's a set named
	  "setn" etc.

2015-08-12  tino

	* [r10880] .clang-format, clang-format.pl, src/TextualParser.cpp:
	  Update to clang-format 3.8

2015-08-11  tino

	* [r10877] ChangeLog, manual/templates.xml,
	  src/GrammarApplicator.hpp,
	  src/GrammarApplicator_runContextualTest.cpp, src/version.hpp:
	  More template override fixing, and documentation
	* [r10876] ChangeLog, manual/templates.xml,
	  src/GrammarApplicator_runContextualTest.cpp, src/version.hpp,
	  test/T_Templates/expected.txt, test/T_Templates/grammar.cg3: Fix
	  template position override so that pos/neg overrides check the
	  min/max exit edges, rather than just the final exit; Fix linking
	  from pos-overridden templates

2015-08-05  tino

	* [r10863] src/TextualParser.cpp: More g++ 4.2 fixes, the sequel
	* [r10862] src/TextualParser.cpp: More g++ 4.2 fixes
	* [r10861] CMakeLists.txt: Ware when changing negations and
	  forgetting some
	* [r10860] CMakeLists.txt, src/TextualParser.cpp: Appease the
	  ancient OS X gods

2015-08-04  tino

	* [r10855] ChangeLog, clang-format.pl,
	  src/GrammarApplicator_runContextualTest.cpp, src/version.hpp:
	  Allow POS_TMPL_OVERRIDE to progatate into OR'ed tests, because I
	  can't figure out why I disallowed it in r4766

2015-07-24  tino

	* [r10846] clang-format.pl, src/options.hpp, src/options_conv.hpp:
	  Forgot to rescue other enum-like lists from clang-format

2015-07-22  tino

	* [r10845] .clang-format, src/ContextualTest.hpp: Style
	* [r10844] .clang-format, clang-format.pl,
	  src/ApertiumApplicator.cpp, src/ApertiumApplicator.hpp,
	  src/BinaryGrammar.cpp, src/BinaryGrammar.hpp,
	  src/BinaryGrammar_read.cpp, src/BinaryGrammar_read_10043.cpp,
	  src/BinaryGrammar_write.cpp, src/Cohort.cpp, src/Cohort.hpp,
	  src/CohortIterator.cpp, src/CohortIterator.hpp,
	  src/ContextualTest.cpp, src/ContextualTest.hpp,
	  src/FSTApplicator.cpp, src/FSTApplicator.hpp,
	  src/FormatConverter.cpp, src/FormatConverter.hpp,
	  src/Grammar.cpp, src/Grammar.hpp, src/GrammarApplicator.cpp,
	  src/GrammarApplicator.hpp, src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runGrammar.cpp,
	  src/GrammarApplicator_runRules.cpp, src/GrammarWriter.cpp,
	  src/GrammarWriter.hpp, src/IGrammarParser.hpp,
	  src/NicelineApplicator.cpp, src/NicelineApplicator.hpp,
	  src/PlaintextApplicator.cpp, src/PlaintextApplicator.hpp,
	  src/Reading.cpp, src/Reading.hpp, src/Rule.cpp, src/Rule.hpp,
	  src/Set.cpp, src/Set.hpp, src/SingleWindow.cpp,
	  src/SingleWindow.hpp, src/Strings.cpp, src/Strings.hpp,
	  src/Tag.cpp, src/Tag.hpp, src/TagTrie.hpp, src/TextualParser.cpp,
	  src/TextualParser.hpp, src/Window.cpp, src/Window.hpp,
	  src/bloomish.hpp, src/cg_comp.cpp, src/cg_conv.cpp,
	  src/cg_proc.cpp, src/flat_unordered_map.hpp,
	  src/flat_unordered_set.hpp, src/icu_uoptions.cpp,
	  src/inlines.hpp, src/interval_vector.hpp, src/istream.hpp,
	  src/libcg3.cpp, src/main.cpp, src/options.hpp,
	  src/options_conv.hpp, src/parser_helpers.hpp,
	  src/sorted_vector.hpp, src/stdafx.hpp, src/test_libcg3.c,
	  src/uextras.cpp, src/uextras.hpp, src/version.hpp: Major style
	  fixup based on clang-format, with wrapper to correct
	  clang-format's bad ideas
	* [r10843] src/Strings.hpp: +,
	* [r10842] src/ContextualTest.hpp, src/FormatConverter.hpp,
	  src/GrammarApplicator.hpp, src/Tag.hpp,
	  src/flat_unordered_map.hpp, src/flat_unordered_set.hpp,
	  src/options.hpp, src/options_conv.hpp: +,
	* [r10841] src/Grammar.cpp: -;
	* [r10840] src/ApertiumApplicator.cpp, src/PlaintextApplicator.cpp:
	  Minor style fix
	* [r10839] src/ApertiumApplicator.cpp, src/BinaryGrammar_read.cpp,
	  src/BinaryGrammar_read_10043.cpp, src/BinaryGrammar_write.cpp,
	  src/CMakeLists.txt, src/Cohort.cpp, src/CohortIterator.cpp,
	  src/FSTApplicator.cpp, src/Grammar.cpp,
	  src/GrammarApplicator.cpp, src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runGrammar.cpp,
	  src/GrammarApplicator_runRules.cpp, src/GrammarWriter.cpp,
	  src/NicelineApplicator.cpp, src/PlaintextApplicator.cpp,
	  src/Reading.cpp, src/Rule.cpp, src/Set.cpp, src/SingleWindow.cpp,
	  src/Tag.cpp, src/Tag.hpp, src/TextualParser.cpp, src/Window.cpp,
	  src/cg_proc.cpp, src/libcg3.cpp, src/macros.hpp, src/main.cpp,
	  src/parser_helpers.hpp, src/stdafx.hpp, test/runall.pl: Vastly
	  nicer foreach macros

2015-07-21  tino

	* [r10838] src/GrammarWriter.cpp, src/Strings.cpp, src/Strings.hpp,
	  src/TextualParser.cpp, src/stdafx.hpp: Disable some shadowing
	  warnings for VS2015; Keep global shadowing and fix that instance

2015-07-02  tino

	* [r10827] CMakeLists.txt, src/CMakeLists.txt: Disable static
	  library

2015-07-01  tino

	* [r10825] Doxyfile, all2unix.pl, make-naive.sh,
	  scripts/auto-linux-wget.sh: Unused

2015-06-30  tino

	* [r10824] ChangeLog, scripts/profile-revisions.php,
	  src/GrammarApplicator.hpp, src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runRules.cpp, src/version.hpp: More static
	  and less static
	* [r10822] ChangeLog, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runRules.cpp, src/version.hpp,
	  test/T_BasicSubstitute/expected.txt,
	  test/T_BasicSubstitute/grammar.cg3,
	  test/T_BasicSubstitute/grammar.cg3b.10043: Eliminate the
	  performance cost of segfault fixes; Test that so it doesn't
	  happen again
	* [r10821] CMakeLists.txt, vapply.sh, vparse.sh: Use C++14 where
	  available
	* [r10819] ChangeLog, scripts/profile-revisions.php,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runRules.cpp, src/version.hpp: Fix
	  segfault; Further reduce reallocations

2015-06-28  tino

	* [r10817] src/GrammarApplicator_runRules.cpp: Fix segfault
	* [r10815] ChangeLog, src/GrammarApplicator_runRules.cpp,
	  src/version.hpp: Fix removing enclosure owner

2015-06-26  tino

	* [r10811] src/ApertiumApplicator.cpp, src/FSTApplicator.cpp,
	  src/GrammarApplicator_runGrammar.cpp,
	  src/GrammarApplicator_runRules.cpp, src/NicelineApplicator.cpp,
	  src/PlaintextApplicator.cpp, src/Tag.hpp, src/TagTrie.hpp,
	  src/Window.cpp, src/Window.hpp: Eliminate std::list
	* [r10810] src/GrammarApplicator.cpp, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runRules.cpp: Regex store as with unif
	* [r10809] src/GrammarApplicator_runRules.cpp: Fix
	* [r10808] src/GrammarApplicator.cpp, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runRules.cpp: Let's see if this works...

2015-06-23  tino

	* [r10802] newsletters/2015-06-23.txt: Newsletter
	* [r10800] ChangeLog, src/ApertiumApplicator.cpp,
	  src/FSTApplicator.cpp, src/GrammarApplicator_runGrammar.cpp,
	  src/GrammarApplicator_runRules.cpp, src/NicelineApplicator.cpp,
	  src/PlaintextApplicator.cpp, src/SingleWindow.cpp,
	  src/SingleWindow.hpp, src/Window.cpp, src/version.hpp: Even more
	  pooling
	* [r10799] src/GrammarApplicator_reflow.cpp: More removed cohort
	  badness
	* [r10798] src/inlines.hpp: Demote CR and NEL to just spaces
	* [r10797] ChangeLog, src/ApertiumApplicator.cpp, src/Cohort.cpp,
	  src/Cohort.hpp, src/FSTApplicator.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runGrammar.cpp,
	  src/GrammarApplicator_runRules.cpp, src/NicelineApplicator.cpp,
	  src/PlaintextApplicator.cpp, src/Reading.cpp, src/Reading.hpp,
	  src/SingleWindow.cpp, src/inlines.hpp, src/libcg3.cpp,
	  src/version.hpp: More pooling
	* [r10796] src/CohortIterator.cpp,
	  src/GrammarApplicator_runContextualTest.cpp: Fix bad reaction
	  between removed cohorts and dependency
	* [r10793] ChangeLog, scripts/profile-revisions.php,
	  src/Cohort.cpp, src/Cohort.hpp, src/Grammar.cpp, src/Grammar.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runRules.cpp, src/inlines.hpp,
	  src/stdafx.hpp, src/version.hpp: Instead of using upwards 128KB
	  per cohort possible_sets cache, use 2KB
	* [r10791] ChangeLog, src/Grammar.hpp, src/Reading.cpp,
	  src/flat_unordered_map.hpp, src/flat_unordered_set.hpp,
	  src/sorted_vector.hpp, src/version.hpp: Let's ship a complete
	  implementation of flat hash table, instead of the half-baked
	  monster

2015-06-21  tino

	* [r10787] scripts/profile-revisions.php,
	  src/flat_unordered_map.hpp, src/flat_unordered_set.hpp:
	  Consistency
	* [r10786] compile-profile.sh, scripts/profile-revisions.php,
	  src/Cohort.cpp, src/Reading.cpp, src/all_cg_comp.cpp,
	  src/all_cg_conv.cpp, src/all_cg_proc.cpp, src/all_vislcg3.cpp,
	  src/flat_unordered_set.hpp, src/inlines.hpp, vapply.sh,
	  vparse.sh: WIP memory pooling hacks

2015-06-20  tino

	* [r10784] src/Tag.cpp: Clone regexes to avoid double-free

2015-06-19  tino

	* [r10782] include/posix/popen_plus.c,
	  src/GrammarApplicator_runContextualTest.cpp: scan-build fixes

2015-06-11  tino

	* [r10763] src/FSTApplicator.cpp: inf weight -> 2147483647

2015-06-06  tino

	* [r10754] ChangeLog, src/ApertiumApplicator.cpp,
	  src/GrammarApplicator.cpp, src/GrammarApplicator.hpp,
	  src/NicelineApplicator.cpp, src/main.cpp, src/options.hpp,
	  src/version.hpp, test/T_MapAdd_Different/args.txt,
	  test/T_MapAdd_Different/expected.txt: Add option --split-mappings

2015-06-04  tino

	* [r10749] include/posix/popen_plus.c, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_runRules.cpp: Fix weirdness
	* [r10748] src/process.hpp: CentOS 6, a plague upon thy house
	* [r10746] CMakeLists.txt, ChangeLog, include/exec-stream,
	  include/posix, include/win32, src/CMakeLists.txt,
	  src/GrammarApplicator.cpp, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_runRules.cpp, src/inlines.hpp,
	  src/process.hpp, src/version.hpp, win32: Switched from
	  exec-stream to popen_plus/win32 for a 20x speedup in External
	  processing
	* [r10745] src/GrammarApplicator.hpp: Undo 2 lines
	* [r10744] src/TextualParser.cpp: Throw on invalid options, rather
	  than endless loop
	* [r10742] ChangeLog, TODO, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_runRules.cpp, src/Reading.cpp,
	  src/Reading.hpp, src/TextualParser.cpp, src/version.hpp: Add
	  SUB:* to make rule targets look at any sub-reading

2015-05-30  tino

	* [r10738] src/TextualParser.cpp: Don't parse SUB as flag

2015-05-28  tino

	* [r10734] src/GrammarApplicator_runRules.cpp: Fix sub-reading
	  still being active bug; Minor optiization

2015-05-26  tino

	* [r10730] ChangeLog, src/version.hpp: STRICT-TAGS done, so far
	* [r10729] manual/grammar.xml, manual/tags.xml: Document
	  STRICT-TAGS and new options
	* [r10728] src/TextualParser.hpp, src/parser_helpers.hpp,
	  test/T_Dependency_Loops/grammar.cg3: Tags listed in Strict-Tags
	  may now be used as implicit inline sets, where they are the only
	  member
	* [r10727] src/Grammar.cpp, src/Grammar.hpp, src/Set.cpp,
	  src/TextualParser.cpp, src/TextualParser.hpp, src/main.cpp: Move
	  --show-tags code to after grammar indexing, to only show used
	  tags
	* [r10725] src/TextualParser.cpp: Test the plain tag; Always allow
	  >>> and <<<
	* [r10724] src/TextualParser.cpp: Always allow many more special
	  tag types
	* [r10723] TODO, src/Strings.cpp, src/Strings.hpp,
	  src/TextualParser.cpp, src/TextualParser.hpp,
	  test/T_Dependency_Loops/grammar.cg3: Strict-Tags default allow
	  wordforms, baseforms, secondary, and * tag

2015-04-23  unhammer

	* [r10651] emacs/cg.el: wordform-lines can have tags (lex.sel)

2015-04-20  tino

	* [r10649] CMakeLists.txt: Append to flags

2015-04-17  unhammer

	* [r10647] emacs/cg.el: todo
	* [r10646] emacs/cg.el: "handle all the string
	  modifiers"[irv]\{0,3\}
	* [r10645] emacs/cg.el: "foo"i also possible, not just "foo"ri

2015-04-13  tino

	* [r10643] ChangeLog, src/Grammar.cpp, src/version.hpp: f branch
	  empty sets turned into * instead of error

2015-04-10  tino

	* [r10640] ChangeLog, src/Grammar.cpp, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runRules.cpp, src/Strings.cpp,
	  src/Strings.hpp, src/version.hpp: Non-capturing unification is
	  now done per reading
	* [r10639] src/GrammarApplicator_runRules.cpp: Remove debug
	* [r10638] vapply.sh: Keep old output
	* [r10637] ChangeLog, TODO, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runRules.cpp, src/version.hpp: WIP to make
	  unification truly per-reading

2015-03-25  unhammer

	* [r10629] emacs/cg.el: call it 0.1.7, since C-M-h now works, more
	  keywords are matched, and we highlight symbol-at-point in output.
	  
	  +some nitpicking

2015-03-25  tino

	* [r10628] CMakeLists.txt: Don't rename cg.el to cg3-mode.el as it
	  seems no current distro ships any package with a conflicting
	  cg.el

2015-03-24  tino

	* [r10617] src/Grammar.cpp, src/Grammar.hpp, src/TextualParser.cpp:
	  Don't report potentially used sets as unused. They might actually
	  be unused, but that would take a lot more work to determine.

2015-03-19  tino

	* [r10601] CMakeLists.txt,
	  include/exec-stream/posix/exec-stream-impl.cpp,
	  src/BinaryGrammar_read.cpp, src/BinaryGrammar_read_10043.cpp,
	  src/BinaryGrammar_write.cpp, src/Grammar.hpp, src/inlines.hpp:
	  Remove -Wno-unused-result to help poor feeble GCC 4.2.1

2015-03-09  tino

	* [r10589] src/GrammarApplicator_reflow.cpp: Satisfy older
	  compilers
	* [r10588] src/Grammar.cpp: Respect empty sections
	* [r10587] ChangeLog, src/GrammarApplicator.hpp, src/main.cpp,
	  src/version.hpp: Enforce matching --prefix for binary grammars

2015-03-06  tino

	* [r10578] src/GrammarApplicator_runGrammar.cpp: Wordforms now
	  search for >" instead of just "
	* [r10577] ChangeLog, manual/sets.xml, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runRules.cpp, src/Strings.cpp,
	  src/Strings.hpp, src/Tag.hpp, src/TextualParser.cpp,
	  src/parser_helpers.hpp, src/version.hpp: Added magic set/tag
	  _SAME_BASIC_
	* [r10576] ChangeLog, manual/grammar.xml,
	  src/BinaryGrammar_read.cpp, src/BinaryGrammar_write.cpp,
	  src/Grammar.hpp, src/GrammarApplicator_reflow.cpp,
	  src/Strings.cpp, src/Strings.hpp, src/TextualParser.cpp,
	  src/version.hpp: Added REOPEN-MAPPINGS
	* [r10574] src/GrammarApplicator.hpp,
	  src/GrammarApplicator_runRules.cpp: Regex captures are now
	  per-reading
	* [r10570] src/GrammarApplicator.cpp,
	  src/GrammarApplicator_reflow.cpp, src/GrammarWriter.cpp: Readings
	  that would be considered identical without --trace are now marked
	  deleted under --trace. This is incorrect behavior, but being
	  blessed because it makes things easier for grammarians.

2015-03-05  tino

	* [r10568] CMakeLists.txt, ChangeLog, manual/contexts.xml,
	  src/BinaryGrammar_write.cpp, src/ContextualTest.cpp,
	  src/ContextualTest.hpp, src/Grammar.cpp, src/Grammar.hpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarWriter.cpp, src/Tag.hpp, src/TagTrie.hpp,
	  src/TextualParser.cpp, src/inlines.hpp, src/stdafx.hpp,
	  src/version.hpp, test/T_Templates/expected.txt,
	  test/T_Templates/grammar.cg3,
	  test/T_Templates/grammar.cg3b.10043, test/T_Templates/input.txt:
	  New context modifier 'f'

2015-02-24  tino

	* [r10550] src/CMakeLists.txt: Actually install DLL
	* [r10549] ChangeLog, manual/cmdreference.xml,
	  src/FSTApplicator.cpp, src/FSTApplicator.hpp, src/cg_conv.cpp,
	  src/options_conv.hpp, src/version.hpp: Added cg-conv --wfactor,-W
	  --wtag --sub-delim,-S

2015-02-23  tino

	* [r10548] src/CMakeLists.txt: More MSVC vs WIN32
	* [r10547] CMakeLists.txt, get-boost.sh, src/CMakeLists.txt,
	  src/cg_comp.cpp, src/cg_proc.cpp, src/stdafx.hpp,
	  src/uextras.cpp, src/uextras.hpp: Differentiate between MSVC and
	  WIN32 to allow for cross-compiling

2015-02-22  tino

	* [r10543] ChangeLog, manual/grammar.xml,
	  src/GrammarApplicator_runRules.cpp, src/version.hpp,
	  test/T_RegExp/expected.txt, test/T_RegExp/grammar.cg3,
	  test/T_RegExp/grammar.cg3b.10043: Fix regex capture groups
	  remaining captured after a target match fail

2015-02-20  tino

	* [r10535] ChangeLog, src/Grammar.cpp, src/GrammarApplicator.cpp,
	  src/version.hpp: Undo not checking tag[0] for regex/icase tags
	* [r10534] src/TextualParser.cpp: no-isets allow (*)
	* [r10533] src/TextualParser.cpp: Moved no-isets check to start of
	  (
	* [r10532] src/BinaryGrammar_read.cpp,
	  src/BinaryGrammar_read_10043.cpp, src/Grammar.hpp: Deduplicate
	  code
	* [r10531] src/all_cg_comp.cpp, src/all_cg_conv.cpp,
	  src/all_cg_proc.cpp, src/all_vislcg3.cpp: Add #include
	  BinaryGrammar_read_10043.cpp
	* [r10530] manual/cgkeywords.xml, manual/grammar.xml: Documented
	  OPTIONS += no-inline-sets no-inline-templates
	* [r10529] src/parser_helpers.hpp: Include guard
	* [r10528] manual/cgkeywords.xml, manual/cmdreference.xml,
	  manual/tags.xml: Document STRICT-TAGS

2015-02-19  tino

	* [r10525] src/TextualParser.cpp: You don't know context
	* [r10524] ChangeLog, src/Grammar.cpp, src/GrammarApplicator.cpp,
	  src/Strings.cpp, src/Strings.hpp, src/Tag.cpp,
	  src/TextualParser.cpp, src/TextualParser.hpp, src/inlines.hpp,
	  src/main.cpp, src/options.hpp, src/parser_helpers.hpp,
	  src/version.hpp: Implemented STRICT-TAGS += ... ; Implemented
	  --show-tags ; Implemented OPTIONS += no-inline-templates
	  no-inline-sets ;

2015-02-18  tino

	* [r10515] cg3.g: That comment is no longer true

2015-02-17  tino

	* [r10506] src/ApertiumApplicator.cpp, src/FSTApplicator.cpp,
	  src/GrammarApplicator.cpp, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_runGrammar.cpp, src/NicelineApplicator.cpp,
	  src/PlaintextApplicator.cpp, src/cg_conv.cpp: cg-conv less noisy
	* [r10505] src/TextualParser.cpp: Missing -> Expected

2015-02-16  tino

	* [r10504] src/CMakeLists.txt, src/Grammar.cpp, src/Grammar.hpp,
	  src/GrammarApplicator.cpp, src/GrammarApplicator.hpp,
	  src/IGrammarParser.hpp, src/Tag.cpp, src/Tag.hpp,
	  src/TextualParser.cpp, src/TextualParser.hpp,
	  src/parser_helpers.hpp, src/uextras.hpp: Spread basename and
	  context to more diagnostics
	* [r10502] src/TextualParser.cpp: Posix basename() takes by
	  non-const char* - crazy people
	* [r10501] TODO, src/CMakeLists.txt, src/TextualParser.cpp,
	  src/TextualParser.hpp, src/cg_comp.cpp, src/cg_proc.cpp,
	  src/uextras.hpp, win32/libgen.c, win32/libgen.h: Print basename
	  of grammar before most parsing diagnostics
	* [r10499] src/TextualParser.cpp, src/TextualParser.hpp,
	  src/uextras.hpp: Show "near `...`" for many parsing diagnostics
	* [r10497] src/main.cpp, src/options.hpp: Minor fix
	* [r10496] scripts/cg3-autobin.pl.in: Synchronize with reality
	* [r10495] src/main.cpp, src/options.hpp: Add option --quiet and
	  allow -v0

2015-02-08  tino

	* [r10439] src/inlines.hpp: Forgot to change hash to avoid MAX and
	  MAX-1 back in r10033

2015-01-28  tino

	* [r10391] test/runall.pl: ...and now with all the code that got
	  deleted.
	* [r10390] test/helper.pl, test/runall.pl: Whoops, wrong svn rm.
	  Also, now tests old grammars.
	* [r10389] test/T_AnyMinusSome/args.txt,
	  test/T_AnyMinusSome/grammar.cg3b.10043,
	  test/T_AnyMinusSome/run.pl, test/T_Barrier/grammar.cg3b.10043,
	  test/T_Barrier/run.pl, test/T_BasicAppend/grammar.cg3b.10043,
	  test/T_BasicAppend/run.pl,
	  test/T_BasicContextTest/grammar.cg3b.10043,
	  test/T_BasicContextTest/run.pl, test/T_BasicDelimit/args.txt,
	  test/T_BasicDelimit/expected.txt,
	  test/T_BasicDelimit/grammar.cg3b.10043,
	  test/T_BasicDelimit/run.pl, test/T_BasicDependency/args.txt,
	  test/T_BasicDependency/grammar.cg3b.10043,
	  test/T_BasicDependency/run.pl,
	  test/T_BasicIff/grammar.cg3b.10043, test/T_BasicIff/run.pl,
	  test/T_BasicSelect/args.txt,
	  test/T_BasicSelect/grammar.cg3b.10043, test/T_BasicSelect/run.pl,
	  test/T_BasicSubstitute/args.txt,
	  test/T_BasicSubstitute/grammar.cg3b.10043,
	  test/T_BasicSubstitute/run.pl, test/T_CG2Compat/args.txt,
	  test/T_CG2Compat/grammar.cg3b.10043, test/T_CG2Compat/run.pl,
	  test/T_CarefulBarrier/grammar.cg3b.10043,
	  test/T_CarefulBarrier/run.pl,
	  test/T_DelayAndDelete/grammar.cg3b.10043,
	  test/T_DelayAndDelete/run.pl, test/T_Dependency_Loops/args.txt,
	  test/T_Dependency_Loops/grammar.cg3b.10043,
	  test/T_Dependency_Loops/run.pl,
	  test/T_Dependency_OutOfRange/expected.txt,
	  test/T_Dependency_OutOfRange/grammar.cg3,
	  test/T_Dependency_OutOfRange/grammar.cg3b.10043,
	  test/T_Dependency_OutOfRange/run.pl,
	  test/T_DontMatchEmptySet/grammar.cg3b.10043,
	  test/T_DontMatchEmptySet/run.pl,
	  test/T_EndlessSelect/grammar.cg3b.10043,
	  test/T_EndlessSelect/run.pl, test/T_External/grammar.cg3b.10043,
	  test/T_Include/grammar.cg3b.10043, test/T_Include/run.pl,
	  test/T_InputCommands/grammar.cg3b.10043,
	  test/T_InputCommands/run.pl,
	  test/T_InputMarkup/grammar.cg3b.10043, test/T_InputMarkup/run.pl,
	  test/T_JumpExecute/args.txt,
	  test/T_JumpExecute/grammar.cg3b.10043, test/T_JumpExecute/run.pl,
	  test/T_MapAdd_Different/args.txt,
	  test/T_MapAdd_Different/expected.txt,
	  test/T_MapAdd_Different/grammar.cg3,
	  test/T_MapAdd_Different/grammar.cg3b.10043,
	  test/T_MapAdd_Different/run.pl,
	  test/T_MapThenRemove/grammar.cg3b.10043,
	  test/T_MapThenRemove/run.pl,
	  test/T_MapThenSelect/grammar.cg3b.10043,
	  test/T_MapThenSelect/run.pl, test/T_MappingPrefix/args.txt,
	  test/T_MappingPrefix/grammar.cg3b.10043,
	  test/T_MappingPrefix/run.pl, test/T_Movement/grammar.cg3b.10043,
	  test/T_Movement/run.pl,
	  test/T_MultipleSections/grammar.cg3b.10043,
	  test/T_MultipleSections/run.pl,
	  test/T_NegatedContextTest/grammar.cg3b.10043,
	  test/T_NegatedContextTest/run.pl,
	  test/T_NotContextTest/grammar.cg3b.10043,
	  test/T_NotContextTest/run.pl, test/T_NumericalTags/args.txt,
	  test/T_NumericalTags/grammar.cg3b.10043,
	  test/T_NumericalTags/run.pl,
	  test/T_OmniWithBarrier/grammar.cg3b.10043,
	  test/T_OmniWithBarrier/run.pl,
	  test/T_Omniscan/grammar.cg3b.10043, test/T_Omniscan/run.pl,
	  test/T_OriginPassing/args.txt,
	  test/T_OriginPassing/grammar.cg3b.10043,
	  test/T_OriginPassing/run.pl, test/T_Parentheses/args.txt,
	  test/T_Parentheses/grammar.cg3b.10043, test/T_Parentheses/run.pl,
	  test/T_RegExp/grammar.cg3b.10043, test/T_RegExp/run.pl,
	  test/T_Relations/args.txt, test/T_Relations/grammar.cg3b.10043,
	  test/T_Relations/run.pl, test/T_RemCohort/args.txt,
	  test/T_RemCohort/grammar.cg3b.10043, test/T_RemCohort/run.pl,
	  test/T_RemoveSingleTag/grammar.cg3b.10043,
	  test/T_RemoveSingleTag/run.pl,
	  test/T_ScanningTests/grammar.cg3b.10043,
	  test/T_ScanningTests/run.pl, test/T_SectionRanges/args.txt,
	  test/T_SectionRanges/grammar.cg3b.10043,
	  test/T_SectionRanges/run.pl, test/T_Sections/args.txt,
	  test/T_Sections/grammar.cg3b.10043, test/T_Sections/run.pl,
	  test/T_SetOp_FailFast/args.txt,
	  test/T_SetOp_FailFast/grammar.cg3b.10043,
	  test/T_SetOp_FailFast/run.pl, test/T_SetOps/grammar.cg3b.10043,
	  test/T_SetOps/run.pl, test/T_SetParentChild/grammar.cg3b.10043,
	  test/T_SetParentChild/run.pl, test/T_SoftDelimiters/args.txt,
	  test/T_SoftDelimiters/grammar.cg3b.10043,
	  test/T_SoftDelimiters/run.pl, test/T_SpaceInForms/args.txt,
	  test/T_SpaceInForms/grammar.cg3b.10043,
	  test/T_SpaceInForms/run.pl,
	  test/T_SubReadings_Apertium/grammar.cg3b.10043,
	  test/T_SubReadings_CG/args.txt,
	  test/T_SubReadings_CG/grammar.cg3b.10043,
	  test/T_SubReadings_CG/run.pl,
	  test/T_SubstituteNil/grammar.cg3b.10043,
	  test/T_SubstituteNil/run.pl, test/T_Templates/grammar.cg3b.10043,
	  test/T_Templates/run.pl, test/T_Trace/args.txt,
	  test/T_Trace/grammar.cg3b.10043, test/T_Trace/run.pl,
	  test/T_Unification/args.txt,
	  test/T_Unification/grammar.cg3b.10043, test/T_Unification/run.pl,
	  test/T_Variables/grammar.cg3b.10043, test/T_Variables/run.pl,
	  test/helper.pl, test/runall.pl: Tests now share run code where
	  possible
	* [r10388] src/Grammar.cpp: Let's not overwrite a random set when
	  loading old grammars
	* [r10387] src/Grammar.cpp: Remember old static sets
	* [r10386] src/BinaryGrammar_read_10043.cpp, src/Grammar.cpp,
	  src/Grammar.hpp, src/TextualParser.cpp, src/cg_conv.cpp: cg-conv
	  also needs to create the dummy set

2015-01-27  tino

	* [r10384] src/BinaryGrammar.cpp, src/BinaryGrammar_read.cpp,
	  src/IGrammarParser.hpp: Only warn about old grammars when -v is
	  on

2015-01-24  tino

	* [r10379] ChangeLog, src/BinaryGrammar_read_10043.cpp,
	  src/version.hpp: Old loader seems to work now
	* [r10378] ChangeLog, src/BinaryGrammar.hpp,
	  src/BinaryGrammar_read.cpp, src/BinaryGrammar_read_10043.cpp,
	  src/CMakeLists.txt, src/version.hpp: Add support for loading
	  grammars from revision 10043 upwards
	* [r10377] compile-profile.sh, scripts/profile-revisions.php,
	  src/ApertiumApplicator.cpp, src/ApertiumApplicator.hpp,
	  src/BinaryGrammar.cpp, src/BinaryGrammar.hpp,
	  src/BinaryGrammar_read.cpp, src/BinaryGrammar_write.cpp,
	  src/Cohort.cpp, src/Cohort.hpp, src/CohortIterator.cpp,
	  src/CohortIterator.hpp, src/ContextualTest.cpp,
	  src/ContextualTest.hpp, src/FSTApplicator.cpp,
	  src/FSTApplicator.hpp, src/FormatConverter.cpp,
	  src/FormatConverter.hpp, src/Grammar.cpp, src/Grammar.hpp,
	  src/GrammarApplicator.cpp, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runGrammar.cpp,
	  src/GrammarApplicator_runRules.cpp, src/GrammarWriter.cpp,
	  src/GrammarWriter.hpp, src/IGrammarParser.hpp,
	  src/NicelineApplicator.cpp, src/NicelineApplicator.hpp,
	  src/PlaintextApplicator.cpp, src/PlaintextApplicator.hpp,
	  src/Reading.cpp, src/Reading.hpp, src/Rule.cpp, src/Rule.hpp,
	  src/Set.cpp, src/Set.hpp, src/SingleWindow.cpp,
	  src/SingleWindow.hpp, src/Strings.cpp, src/Strings.hpp,
	  src/Tag.cpp, src/Tag.hpp, src/TagTrie.hpp, src/TextualParser.cpp,
	  src/TextualParser.hpp, src/Window.cpp, src/Window.hpp,
	  src/bloomish.hpp, src/cg3.h, src/cg_comp.cpp, src/cg_conv.cpp,
	  src/cg_proc.cpp, src/flat_unordered_map.hpp,
	  src/flat_unordered_set.hpp, src/inlines.hpp,
	  src/interval_vector.hpp, src/istream.hpp, src/libcg3.cpp,
	  src/macros.hpp, src/main.cpp, src/options.hpp,
	  src/options_conv.hpp, src/sorted_vector.hpp, src/stdafx.hpp,
	  src/test_libcg3.c, src/uextras.cpp, src/uextras.hpp,
	  src/version.hpp, vapply.sh, vparse.sh: Bump copyright to 2015;
	  Fix profiling scripts
	* [r10373] src/GrammarApplicator.cpp, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp, src/flat_unordered_map.hpp:
	  Take advantage of known set numbers to speed up set-reading cache
	  to r10297 levels
	* [r10372] src/ApertiumApplicator.cpp, src/BinaryGrammar.hpp,
	  src/BinaryGrammar_read.cpp, src/BinaryGrammar_write.cpp,
	  src/ContextualTest.cpp, src/ContextualTest.hpp,
	  src/FSTApplicator.cpp, src/Grammar.cpp, src/Grammar.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runGrammar.cpp,
	  src/GrammarApplicator_runRules.cpp, src/GrammarWriter.cpp,
	  src/NicelineApplicator.cpp, src/PlaintextApplicator.cpp,
	  src/Rule.cpp, src/TextualParser.cpp, src/cg_comp.cpp,
	  src/flat_unordered_set.hpp, src/interval_vector.hpp,
	  src/main.cpp, src/sorted_vector.hpp: Use set number instead of
	  hash at runtime; Eliminat some data members and part of the
	  binary format

2015-01-20  tino

	* [r10367] src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp: ...but don't spend 32% extra
	  time on it.
	* [r10366] src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp, src/flat_unordered_set.hpp:
	  32bit hash collision seen in the wild - bump cache to 64bit

2014-12-01  tino

	* [r10297] ChangeLog, TODO, src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runRules.cpp, src/version.hpp: Handle
	  mapping tags coming from varstrings

2014-11-11  tino

	* [r10272] ChangeLog, src/GrammarApplicator_runRules.cpp,
	  src/version.hpp: Fixed Substitute in non-input-order segfault -
	  how has nobody triggered this before?

2014-11-06  unhammer

	* [r10256] emacs/cg.el: cg--file now buffer-local everywhere, so
	  grab it before burying buffer

2014-11-05  unhammer

	* [r10255] emacs/cg.el: more keywords; hl symbol-at-point in the
	  output
	  
	  would be nice to highlight any members of LIST-at-point, but
	  probably need to cache all lists then :-/

2014-11-05  tino

	* [r10254] src/BinaryGrammar_read.cpp: varint branch that reduces
	  binary filesize by at least 25%; Fix tiny thing in ctest->name

2014-10-29  tino

	* [r10242] manual/installation.xml, src/BinaryGrammar_write.cpp,
	  src/Grammar.hpp, src/GrammarApplicator_runRules.cpp,
	  src/stdafx.hpp: Eliminate more std::map; Tell Debians to use
	  Apertium Nightly; Tell RPMians to use OBS

2014-10-29  unhammer

	* [r10241] emacs/cg.el: beg/end-of-defun fn's; C-M-h now selects a
	  rule/set
	  
	  and C-M-a / C-M-e works as expected

2014-10-21  tino

	* [r10235] src/Grammar.cpp, src/TextualParser.cpp: Error out when
	  parsing empty ()

2014-10-09  tino

	* [r10218] CMakeLists.txt: Accidentally -fPIC
	* [r10217] CMake/FindBoost.cmake, CMakeLists.txt,
	  src/CMakeLists.txt: Mac RPATH and Threads fixes; If C++11 is
	  possible, require it; Seperate C++ and C flags

2014-10-07  tino

	* [r10195] ChangeLog, src/GrammarApplicator_matchSet.cpp,
	  src/version.hpp: Forgot the other half
	* [r10194] ChangeLog, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runRules.cpp, src/TagTrie.hpp,
	  src/version.hpp: Fix tag unification to actually work with new
	  trie storage

2014-10-06  tino

	* [r10190] src/version.hpp: Version bump & change

2014-10-03  tino

	* [r10184] src/CMakeLists.txt: No need to explicitly set rpath any
	  longer

2014-09-30  tino

	* [r10157] TODO, src/CMakeLists.txt: Eliminate private library
	  split

2014-09-08  tino

	* [r10134] src/FSTApplicator.cpp: cg-conv FST: Copy wordform ->
	  baseform when missing

2014-09-05  tino

	* [r10125] src/FSTApplicator.cpp: cg-conv FST input < fix
	* [r10123] CMakeLists.txt: RPM building fixes
	* [r10122] CMakeLists.txt, get-boost.sh, src/CMakeLists.txt: RPM
	  building fixes

2014-09-01  tino

	* [r10105] TODO, src/FSTApplicator.cpp, src/TextualParser.cpp,
	  src/inlines.hpp: cg-conv FST input now handles trailing
	  whitespace and \

2014-08-27  tino

	* [r10100] src/cg_conv.cpp: cg-conv: add dummy tag to delimiters to
	  silence warning

2014-08-23  tino

	* [r10098] TODO, manual/tags.xml: ToDos; Undocument !tag

2014-08-23  unhammer

	* [r10097] emacs/cg.el: highlight SETVARIABLE

2014-08-14  tino

	* [r10080] TODO, manual/installation.xml, manual/probabilistic.xml,
	  manual/tags.xml, src/GrammarApplicator_matchSet.cpp,
	  src/NicelineApplicator.cpp, src/Tag.cpp, src/Tag.hpp: Tag prefix
	  ! is now an alias for ^; cg-conv better handling of niceline
	  format

2014-08-11  tino

	* [r10072] src/cg_conv.cpp: Better Apertium format detection

2014-08-07  tino

	* [r10065] newsletters/2014-08-07.txt: Newsletter
	* [r10063] ChangeLog, src/GrammarApplicator_runRules.cpp,
	  src/version.hpp: Fix setting parent to 0 and later testing for
	  parent; Release 0.9.8.10063
	* [r10054] src/TextualParser.cpp: VC10 needs a cast here

2014-07-20  tino

	* [r10051] src/Grammar.cpp, src/GrammarWriter.cpp, src/TagTrie.hpp,
	  src/all_cg_comp.cpp, src/all_cg_conv.cpp, src/all_cg_proc.cpp:
	  Remove more CompositeTag references; Fix GrammarWriter for new
	  tag store

2014-07-18  tino

	* [r10049] src/main.cpp, src/options.hpp: Add --min-binary-revision
	  to programatically determine if a grammar needs rebuilding

2014-07-15  tino

	* [r10048] cg3.magic: Add file(1) magic definition

2014-07-15  unhammer

	* [r10047] emacs/cg.el: more rule flags to highlight
	* [r10046] emacs/cg.el: hl UNMAP UNSAFE

2014-07-15  tino

	* [r10045] src/version.hpp: Bump binary grammar revision

2014-07-14  tino

	* [r10044] src/all_vislcg3.cpp: Eliminate CompositeTag
	* [r10043] ChangeLog, TODO, src/BinaryGrammar_read.cpp,
	  src/BinaryGrammar_write.cpp, src/CMakeLists.txt, src/Cohort.cpp,
	  src/CompositeTag.cpp, src/CompositeTag.hpp, src/Grammar.cpp,
	  src/Grammar.hpp, src/GrammarApplicator.cpp,
	  src/GrammarApplicator.hpp, src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runRules.cpp, src/GrammarWriter.cpp,
	  src/Set.cpp, src/Set.hpp, src/Tag.hpp, src/TagTrie.hpp,
	  src/TextualParser.cpp, src/TextualParser.hpp, src/main.cpp,
	  src/version.hpp, test/T_Unification/expected.txt: Use a trie for
	  tag matching (6% faster normal, 70% faster worst); Eliminate
	  CompositeTag; Bump binary revision

2014-07-13  tino

	* [r10038] src/GrammarApplicator_matchSet.cpp: Unification of plain
	  tags don't need special handling
	* [r10037] src/Grammar.cpp, src/Set.hpp, src/Tag.hpp: Minor stuff

2014-07-11  tino

	* [r10036] scripts/profile-revisions-tally.php,
	  scripts/profile-revisions.php, src/TextualParser.cpp: Flush;
	  Profiling
	* [r10035] src/Grammar.cpp, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runRules.cpp, src/stdafx.hpp: Eliminate
	  uint32Set in favour of uint32SortedVector
	* [r10034] ChangeLog, src/CMakeLists.txt, src/version.hpp: Flat is
	  good
	* [r10033] src/BinaryGrammar_write.cpp, src/Grammar.cpp,
	  src/Grammar.hpp, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runGrammar.cpp,
	  src/GrammarApplicator_runRules.cpp, src/GrammarWriter.hpp,
	  src/SingleWindow.cpp, src/SingleWindow.hpp, src/Window.hpp,
	  src/flat_unordered_map.hpp, src/flat_unordered_set.hpp,
	  src/stdafx.hpp: More flat unordered
	* [r10032] src/Grammar.cpp, src/GrammarApplicator.cpp, src/Tag.hpp,
	  src/flat_unordered_map.hpp, src/flat_unordered_set.hpp: New
	  flat_unordered_map to hopefully reduce allocations
	* [r10029] TODO, src/CohortIterator.cpp, src/CompositeTag.hpp,
	  src/Grammar.cpp, src/Grammar.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runRules.cpp, src/Tag.hpp,
	  src/TextualParser.cpp, src/sorted_vector.hpp, win32/libgen.c:
	  Eliminate TagSet in favour of TagSortedVector

2014-06-22  tino

	* [r10016] ChangeLog, src/ApertiumApplicator.cpp,
	  src/GrammarApplicator.hpp, src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runRules.cpp, src/version.hpp: Double cache
	  sizes => double runtimes, so undo that

2014-06-17  tino

	* [r10007] ChangeLog, src/version.hpp: Forgot revision
	* [r10006] src/ApertiumApplicator.cpp, src/BinaryGrammar_read.cpp,
	  src/BinaryGrammar_write.cpp, src/Cohort.hpp,
	  src/FSTApplicator.cpp, src/Grammar.cpp, src/Grammar.hpp,
	  src/GrammarApplicator.cpp, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runGrammar.cpp,
	  src/GrammarApplicator_runRules.cpp, src/GrammarWriter.cpp,
	  src/NicelineApplicator.cpp, src/PlaintextApplicator.cpp,
	  src/Reading.cpp, src/Reading.hpp, src/Rule.hpp,
	  src/TextualParser.cpp, src/libcg3.cpp, src/main.cpp,
	  src/options.hpp, test/T_BasicSubstitute/expected.txt,
	  test/T_BasicSubstitute/grammar.cg3: Allow modifiers i, r, ri on
	  rule wordforms; Fix a bug where Substituted wordforms did not
	  update the valid rules list
	* [r10005] src/ApertiumApplicator.cpp: Better logic for printing /
	* [r10004] ChangeLog, TODO, src/ApertiumApplicator.cpp,
	  src/GrammarApplicator.hpp, src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runRules.cpp, src/flat_unordered_set.hpp,
	  src/version.hpp: cg-proc -t output ¬ before delayed/deleted
	  readings; Embiggen some caches to eliminate collisions

2014-06-10  tino

	* [r9987] src/Rule.hpp, src/TextualParser.cpp: Detect ENCL_*
	  overlap by counting bits
	* [r9985] src/TextualParser.cpp: Throw an error for malformed /X
	  positions

2014-06-09  tino

	* [r9984] manual/subreadings.xml: Document /*

2014-06-07  tino

	* [r9974] ChangeLog, src/ContextualTest.hpp,
	  src/GrammarApplicator.hpp, src/TextualParser.cpp,
	  src/version.hpp, test/T_SubReadings_CG/expected.txt,
	  test/T_SubReadings_CG/grammar.cg3: Allow /* in contextual tests
	  to look at any sub-reading

2014-06-04  unhammer

	* [r9959] emacs/cg.el: list of ADD/REMOVE/etc. only defined one
	  place

2014-05-30  tino

	* [r9944] manual/installation.xml: Homebrew workaround

2014-05-28  tino

	* [r9942] debian, dist: Moved packaging scripts
	* [r9941] ChangeLog, src/GrammarApplicator_runContextualTest.cpp,
	  src/version.hpp: Fix @-N

2014-05-27  tino

	* [r9940] dist/build-debian-ubuntu.sh, dist/dist-debian-ubuntu.pl:
	  Build script for nightly fully automatic publishing
	* [r9939] ChangeLog, src/CMakeLists.txt, src/version.hpp: rpath
	  changes for *nix to allow for relocatable packages on all
	  platforms
	* [r9938] src/CMakeLists.txt: Fix OS X @rpath to allow testing

2014-05-26  tino

	* [r9937] src/CMakeLists.txt: Fix OS X to use @rpath for finding
	  libcg3-private.dylib

2014-05-21  tino

	* [r9934] dist/dist-debian-ubuntu.pl: Produce identical .tar.bz2
	  across packaging changes
	* [r9933] CMakeLists.txt, ChangeLog, dist/dist-debian-ubuntu.pl,
	  src/version.hpp: Fix pkgconfig; Unlink before write
	* [r9932] CMakeLists.txt, debian/cg3.install: Install cg.el to
	  global cg3-mode.el
	* [r9931] debian/control: Dependency resolution is weird

2014-05-20  tino

	* [r9930] ChangeLog, src/version.hpp: Version bump, 'cause
	  Launchpad
	* [r9929] debian/control, dist/dist-debian-ubuntu.pl: Version
	  trickery
	* [r9928] CMake/DebSourcePPA.cmake, CMakeLists.txt,
	  dist/dist-debian-ubuntu.pl: Better Debian/Ubuntu packaging
	  script; CMake 2.8.9+ required
	* [r9927] CMakeLists.txt, ChangeLog, scripts/cg3-autobin.pl,
	  scripts/cg3-autobin.pl.in, src/version.hpp, update-revision.pl:
	  Set cg3-autobin.pl revision during build instead of manually
	* [r9926] CMakeLists.txt, debian/control, debian/libcg3-0.install,
	  debian/libcg3-0.symbols, debian/libcg3-dev.install,
	  src/CMakeLists.txt: Multiarch support
	* [r9925] CMakeLists.txt, ChangeLog, scripts/cg3-autobin.pl,
	  src/Cohort.cpp, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runGrammar.cpp, src/Reading.cpp,
	  src/version.hpp, test/T_RemCohort/expected.txt: Handle readings
	  with multiple mappings and sub-readings; Drop Ubuntu 12.10 from
	  PPA

2014-05-19  tino

	* [r9924] debian/control, debian/libcg3-0.symbols: Symbols
	* [r9923] CMakeLists.txt, debian/changelog, debian/control,
	  debian/libcg3-0.install, src/CMakeLists.txt, src/libcg3.cpp:
	  CMake version, NO_SONAME, visibility
	* [r9922] src/CMakeLists.txt: Split libcg3 further into a private
	  and public part

2014-05-12  tino

	* [r9899] CMakeLists.txt, debian/cg3.install: Install man pages,
	  now that they're up-to-date

2014-05-10  tino

	* [r9897] cg3.pc.in: Revert -0
	* [r9896] cg3.pc.in, debian/changelog, debian/control, debian/docs,
	  debian/watch: Debian fixes

2014-05-08  tino

	* [r9894] cmake.sh, manual/installation.xml,
	  scripts/profile-revisions.php: Document that ldconfig is needed

2014-05-07  tino

	* [r9893] debian/control, debian/libcg3-0.lintian-overrides,
	  src/CMakeLists.txt: Make soname match package name, since that
	  depends on public C API version
	* [r9892] ChangeLog, LICENSE, debian/cg3.install, debian/cg3.links,
	  debian/cg3.lintian-overrides, debian/changelog, debian/control,
	  debian/libcg3-0.install, debian/libcg3-0.lintian-overrides,
	  debian/libcg3-0.postinst, debian/libcg3.install,
	  debian/libcg3.postinst, manual/man, manual/man/cg-comp.1,
	  manual/man/cg-conv.1, manual/man/cg-proc.1,
	  manual/man/cg3-autobin.pl.1, manual/man/vislcg3.1,
	  scripts/cg3-autobin.pl, src/CMakeLists.txt, src/cg-comp.1,
	  src/cg-proc.1, src/version.hpp, src/vislcg3.1: Man pages,
	  symlinks, overrides, oh my...

2014-05-06  tino

	* [r9891] debian, debian/cg3.install, debian/changelog,
	  debian/compat, debian/control, debian/copyright,
	  debian/libcg3-dev.install, debian/libcg3.install,
	  debian/libcg3.postinst, debian/rules, debian/source,
	  debian/source/format, src/CMakeLists.txt: Debian packaging is a
	  nightmare
	* [r9890] CMakeLists.txt: Force -fPIC for ancient setups
	* [r9889] CMakeLists.txt, TODO, src/CMakeLists.txt: Build objects
	  once and reuse for static/shared library

2014-04-25  tino

	* [r9873] src/stdafx.hpp: cycle.h doesn't know all platforms (such
	  as ARM), so fall back on clock()

2014-04-20  tino

	* [r9867] todo.sh: Wipe TODO.list before regenerate

2014-04-18  tino

	* [r9864] CMakeLists.txt, ChangeLog, manual/installation.xml,
	  scripts/cg3-autobin.pl, src/version.hpp: Ubuntu 14.04 has ICU 52,
	  so depend on that instead of 4.8.

2014-04-10  tino

	* [r9853] cmake.sh: cmake.sh now accepts --prefix X and --prefix=X

2014-04-08  tino

	* [r9848] src/cg_proc.cpp: Clean up flags to be bool instead of
	  int, and just use them directly.

2014-04-02  tino

	* [r9840] ChangeLog, manual/installation.xml,
	  scripts/cg3-autobin.pl, src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/TextualParser.cpp, src/version.hpp: Fix context S to actually
	  test self, even if offset is non-zero

2014-03-24  tino

	* [r9815] ChangeLog, manual/dependencies.xml,
	  scripts/cg3-autobin.pl, src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runRules.cpp, src/main.cpp,
	  src/version.hpp, test/T_RegExp/grammar.cg3: Fix parsing non-UTF-8
	  cmdline args; Fix readings' plain cache being used with special
	  sets

2014-03-11  tino

	* [r9768] src/CMakeLists.txt: make test

2014-03-07  tino

	* [r9765] src/GrammarWriter.cpp: Remember subreadings and
	  static-tags in textual writer
	* [r9764] ChangeLog, TODO, scripts/cg3-autobin.pl,
	  src/GrammarApplicator.hpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runRules.cpp, src/version.hpp,
	  test/T_BasicDependency/grammar.cg3: Barriers now work for c*
	  tests

2014-03-06  unhammer

	* [r9763] emacs/cg.el: todo

2014-03-06  tino

	* [r9760] ChangeLog, manual/rules.xml, scripts/cg3-autobin.pl,
	  src/GrammarApplicator.cpp, src/GrammarApplicator.hpp,
	  src/GrammarApplicator_runGrammar.cpp,
	  src/GrammarApplicator_runRules.cpp, src/Rule.hpp,
	  src/SingleWindow.hpp, src/Strings.cpp, src/Strings.hpp,
	  src/Window.cpp, src/version.hpp, test/T_Variables/expected.txt,
	  test/T_Variables/input.txt: Set/RemVariable now optionally takes
	  OUTPUT to commit the changes to the stream.

2014-03-04  tino

	* [r9759] ChangeLog, TODO, manual/dependencies.xml,
	  scripts/cg3-autobin.pl, src/CMakeLists.txt,
	  src/CohortIterator.cpp, src/CohortIterator.hpp,
	  src/ContextualTest.hpp, src/GrammarApplicator.cpp,
	  src/GrammarApplicator.hpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/TextualParser.cpp, src/version.hpp,
	  test/T_BasicDependency/expected.txt,
	  test/T_BasicDependency/grammar.cg3: Implement ancestor search
	  with 'pp'; Made right/left operators work with p, *p, pp; CMake
	  bails out of Boost is older than 1.48.0

2014-02-18  tino

	* [r9709] newsletters/2014-02-18.txt: Newsletter
	* [r9708] ChangeLog, scripts/cg3-autobin.pl, src/version.hpp: CG-3
	  Release 0.9.8.9708

2014-02-17  tino

	* [r9707] src/BinaryGrammar_read.cpp, src/BinaryGrammar_write.cpp,
	  src/version.hpp: Track binary format separately from main
	  revision - remember to bump CG3_FEATURE_REV when adding a new
	  feature.

2014-02-12  tino

	* [r9705] CMakeLists.txt, ChangeLog, TODO, scripts/cg3-autobin.pl,
	  src/ApertiumApplicator.cpp, src/version.hpp: Apertium unique_tags
	  check; Remove /GR- for VC++

2014-02-03  tino

	* [r9692] CMakeLists.txt, scripts/cg3-autobin.pl,
	  src/CMakeLists.txt, src/version.hpp: Disable TCMalloc for OS X

2014-02-02  tino

	* [r9690] ChangeLog, scripts/cg3-autobin.pl, src/version.hpp:
	  Revision bump

2014-01-29  tino

	* [r9684] CMakeLists.txt: PPAs can now be built for Ubuntu 14.04

2014-01-28  tino

	* [r9668] CMakeLists.txt: Ubuntu 13.04 is EOL, so drop from PPA

2014-01-22  tino

	* [r9647] src/options.hpp: Default has been UTF-8 for ages - better
	  say so here as well.
	* [r9646] scripts/profile-revisions.php, vapply.sh, vparse.sh:
	  NDEBUG

2014-01-21  tino

	* [r9645] CMakeLists.txt, ChangeLog, scripts/cg3-autobin.pl,
	  src/ApertiumApplicator.cpp, src/CMakeLists.txt, src/Cohort.hpp,
	  src/CompositeTag.cpp, src/ContextualTest.cpp, src/Grammar.cpp,
	  src/Grammar.hpp, src/GrammarApplicator.cpp,
	  src/GrammarApplicator.hpp, src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runRules.cpp, src/Reading.cpp,
	  src/Rule.hpp, src/Set.cpp, src/Tag.cpp, src/TextualParser.cpp,
	  src/flat_unordered_set.hpp, src/inlines.hpp, src/libcg3.cpp,
	  src/version.hpp: Added flat_unordered_set to reduce memory usage;
	  Set NDEBUG for Release builds; Bumped binary revision

2014-01-20  tino

	* [r9640] src/GrammarApplicator.hpp,
	  src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_runRules.cpp, src/interval_vector.hpp:
	  Minor cleanup

2014-01-14  tino

	* [r9637] CMakeLists.txt, ChangeLog, scripts/cg3-autobin.pl,
	  src/version.hpp: Explicitly depend on Boost 1.48.0 for Ubuntu
	  12.04
	* [r9635] ChangeLog, manual/grammar.xml, scripts/cg3-autobin.pl,
	  src/Cohort.cpp, src/Cohort.hpp, src/CompositeTag.hpp,
	  src/Grammar.cpp, src/GrammarApplicator.cpp,
	  src/GrammarApplicator.hpp, src/GrammarApplicator_matchSet.cpp,
	  src/GrammarApplicator_reflow.cpp,
	  src/GrammarApplicator_runContextualTest.cpp,
	  src/GrammarApplicator_runRules.cpp, src/NicelineApplicator.cpp,
	  src/Reading.hpp, src/Set.cpp, src/Set.hpp, src/Tag.hpp,
	  src/TextualParser.cpp, src/libcg3.cpp, src/sorted_vector.hpp,
	  src/stdafx.hpp, src/version.hpp, test/T_Unification/expected.txt,
	  test/T_Unification/grammar.cg3, test/T_Unification/input.txt: Fix
	  unification (11% slower); Use more Boost flat_map/set and
	  sorted_vector (8% faster)

2014-01-09  tino

	* [r9595] ChangeLog, scripts/cg3-autobin.pl, src/version.hpp:
	  Revision bump
	* [r9594] test/T_AnyMinusSome/run.pl, test/T_Barrier/run.pl,
	  test/T_BasicAppend/run.pl, test/T_BasicContextTest/run.pl,
	  test/T_BasicDelimit/run.pl, test/T_BasicDependency/run.pl,
	  test/T_BasicIff/run.pl, test/T_BasicSelect/run.pl,
	  test/T_CG2Compat/run.pl, test/T_CarefulBarrier/run.pl,
	  test/T_DelayAndDelete/run.pl, test/T_Dependency_Loops/run.pl,
	  test/T_Dependency_OutOfRange/run.pl,
	  test/T_DontMatchEmptySet/run.pl, test/T_EndlessSelect/run.pl,
	  test/T_External/run.pl, test/T_InputCommands/run.pl,
	  test/T_InputMarkup/run.pl, test/T_JumpExecute/run.pl,
	  test/T_MapAdd_Different/run.pl, test/T_MapThenRemove/run.pl,
	  test/T_MapThenSelect/run.pl, test/T_MappingPrefix/run.pl,
	  test/T_Movement/run.pl, test/T_MultipleSections/run.pl,
	  test/T_NegatedContextTest/run.pl, test/T_NotContextTest/run.pl,
	  test/T_NumericalTags/run.pl, test/T_OmniWithBarrier/run.pl,
	  test/T_Omniscan/run.pl, test/T_OriginPassing/run.pl,
	  test/T_Parentheses/run.pl, test/T_RegExp/run.pl,
	  test/T_Relations/run.pl, test/T_RemCohort/run.pl,
	  test/T_RemoveSingleTag/run.pl, test/T_ScanningTests/run.pl,
	  test/T_SectionRanges/run.pl, test/T_Sections/run.pl,
	  test/T_SetOp_FailFast/run.pl, test/T_SetOps/run.pl,
	  test/T_SetParentChild/run.pl, test/T_SoftDelimiters/run.pl,
	  test/T_SpaceInForms/run.pl, test/T_SubReadings_Apertium/run.pl,
	  test/T_SubReadings_CG/run.pl, test/T_SubstituteNil/run.pl,
	  test/T_Templates/run.pl, test/T_Trace/run.pl,
	  test/T_Unification/run.pl, test/T_Variables/run.pl: No need for
	  -b on diff any longer
	* [r9593] src/GrammarApplicator.cpp,
	  test/T_AnyMinusSome/expected.txt, test/T_AnyMinusSome/run.pl,
	  test/T_Barrier/expected.txt, test/T_Barrier/run.pl,
	  test/T_BasicContextTest/expected.txt,
	  test/T_BasicContextTest/run.pl, test/T_BasicDelimit/expected.txt,
	  test/T_BasicDelimit/run.pl, test/T_BasicDependency/expected.txt,
	  test/T_BasicDependency/run.pl, test/T_BasicIff/expected.txt,
	  test/T_BasicIff/run.pl, test/T_BasicSelect/expected.txt,
	  test/T_BasicSelect/run.pl, test/T_CG2Compat/expected.txt,
	  test/T_CG2Compat/run.pl, test/T_CarefulBarrier/expected.txt,
	  test/T_CarefulBarrier/run.pl,
	  test/T_Dependency_Loops/expected.txt,
	  test/T_Dependency_Loops/run.pl,
	  test/T_Dependency_OutOfRange/expected.txt,
	  test/T_Dependency_OutOfRange/run.pl,
	  test/T_DontMatchEmptySet/expected.txt,
	  test/T_DontMatchEmptySet/run.pl,
	  test/T_EndlessSelect/expected.txt, test/T_EndlessSelect/run.pl,
	  test/T_External/expected.txt, test/T_External/run.pl,
	  test/T_Include/expected.txt, test/T_InputCommands/expected.txt,
	  test/T_InputCommands/run.pl, test/T_InputMarkup/expected.txt,
	  test/T_InputMarkup/run.pl, test/T_JumpExecute/expected.txt,
	  test/T_JumpExecute/run.pl, test/T_MapAdd_Different/expected.txt,
	  test/T_MapAdd_Different/run.pl,
	  test/T_MapThenRemove/expected.txt, test/T_MapThenRemove/run.pl,
	  test/T_MapThenSelect/expected.txt, test/T_MapThenSelect/run.pl,
	  test/T_MappingPrefix/expected.txt, test/T_MappingPrefix/run.pl,
	  test/T_Movement/expected.txt, test/T_Movement/run.pl,
	  test/T_MultipleSections/expected.txt,
	  test/T_MultipleSections/run.pl,
	  test/T_NegatedContextTest/expected.txt,
	  test/T_NegatedContextTest/run.pl,
	  test/T_NotContextTest/expected.txt, test/T_NotContextTest/run.pl,
	  test/T_NumericalTags/expected.txt, test/T_NumericalTags/run.pl,
	  test/T_OmniWithBarrier/expected.txt,
	  test/T_OmniWithBarrier/run.pl, test/T_Omniscan/expected.txt,
	  test/T_Omniscan/run.pl, test/T_OriginPassing/expected.txt,
	  test/T_OriginPassing/run.pl, test/T_Parentheses/expected.txt,
	  test/T_Parentheses/run.pl, test/T_RegExp/expected.txt,
	  test/T_RegExp/run.pl, test/T_Relations/expected.txt,
	  test/T_Relations/run.pl, test/T_RemoveSingleTag/expected.txt,
	  test/T_RemoveSingleTag/run.pl, test/T_ScanningTests/expected.txt,
	  test/T_ScanningTests/run.pl, test/T_SectionRanges/expected.txt,
	  test/T_SectionRanges/run.pl, test/T_Sections/expected.txt,
	  test/T_Sections/run.pl, test/T_SetOp_FailFast/expected.txt,
	  test/T_SetOp_FailFast/run.pl, test/T_SetOps/expected.txt,
	  test/T_SetOps/run.pl, test/T_SetParentChild/expected.txt,
	  test/T_SetParentChild/run.pl, test/T_SoftDelimiters/expected.txt,
	  test/T_SoftDelimiters/run.pl, test/T_SpaceInForms/expected.txt,
	  test/T_SpaceInForms/run.pl, test/T_SubReadings_Apertium/run.pl,
	  test/T_SubReadings_CG/expected.txt, test/T_SubReadings_CG/run.pl,
	  test/T_SubstituteNil/expected.txt, test/T_SubstituteNil/run.pl,
	  test/T_Templates/expected.txt, test/T_Templates/run.pl,
	  test/T_Trace/expected.txt, test/T_Trace/run.pl,
	  test/T_Variables/expected.txt, test/T_Variables/run.pl: Flip
	  output order so there are no trailing spaces in readings
	* [r9592] manual/cmdreference.xml, scripts/cg3-autobin.pl,
	  src/GrammarApplicator.cpp, src/GrammarApplicator.hpp,
	  src/main.cpp, src/options.hpp: Eliminate --dep-humanize

2014-01-08  tino

	* [r9591] TODO, manual/cmdreference.xml, src/all_cg_conv.cpp,
	  src/all_cg_proc.cpp, src/cg_proc.cpp: Remove more references to
	  Matxin
	* [r9590] ChangeLog, scripts/cg3-autobin.pl, src/CMakeLists.txt,
	  src/FormatConverter.cpp, src/FormatConverter.hpp,
	  src/MatxinApplicator.cpp, src/MatxinApplicator.hpp,
	  src/NicelineApplicator.cpp, src/NicelineApplicator.hpp,
	  src/PlaintextApplicator.cpp, src/PlaintextApplicator.hpp,
	  src/cg_conv.cpp, src/cg_proc.cpp, src/main.cpp,
	  src/options_conv.hpp, src/version.hpp: Removed Matxin; cg-conv
	  can now output to Niceline and Plain Text formats (-N, -P)

