anchor.diff:  constraint macros. This is caused by the macros using argument strings
   to produce nice failure messages.
   
  +
  +Asserting C++ Exceptions
  +~~~~~~~~~~~~~~~~~~~~~~~~
  +
  +When you use *CGreen* with C++ there is one extra assertion available:
  +
  +|=========================================================
  +|*Assertion* |*Description*
  +| `assert_throws(exception, expression)` | Passes if evaluating `expression` throws `exception`
  +|=========================================================
  +
  +
   BDD Style vs. TDD Style
   ~~~~~~~~~~~~~~~~~~~~~~~
   
  
positive.code: documentation you'll need.
  
  The `assert_that()` call is the primary part of an assertion, which is
  complemented with a constraint, in this case `is_equal_to()`. This
  makes a very fluent interface to the asserts, that actually reads like
  English.
  
  NOTE: Sometimes you just want to fail the test explicitly, and there is a function for that too, `fail_test(const char *message)`. And there is a function to explicitly pass, `pass_test(void)`.
  
  Assertions send messages to *Cgreen*, which in turn outputs the
  results.
  
  Here are the standard constraints...
  
  
negative.code: ~~~~~~~~~~~~~~~~~~~~~~~
  
  Cgreen have been around for a while, developed and matured. There is
  an older style of assertions that was the initial version, a style
  that we now call the 'legacy style', because it was more aligned with
  the original, now old, unit test frameworks. If you are not interested
  in historical artifacts, I recommend that you skip this section.
  
  But for completeness of documentation, here are the legacy style
  assertion macros:
  