Granted, I may lose a small amount of understanding on the part of C programmers who are looking at my code (and are familiar with the terms ``assert'' and ``invariant''), but I will gain a great deal of understanding from people that are new to the ``Design by Contract'' method.
My current solution for testing, as far as modules are concerned, is to include a test routine at the end of each module which will only be activated if a gm4 flag is set. I'm including the "script" necessary to run each module test as Self-Documentation text that my perl script Document can pick out.