Information on the tests that are in org.multijava.mjc.testcase.typecheck

The tests fall into these categories:

1) .java files that produce output (usually errors, but sometimes only
non-fatal cautions) when mjc is applied.  These have a .java-expected file
that contains the expected output (modulo platform-dependent line endings)

Any file that ends in .java and is not filtered out by the skip file will
be included in these tests.  To add a new test simply add a .java file and
the associated .java-expected file.

These tests are run as junit tests.  The Makefile contains targets that cause
the list of test files to be written into the file 'listTestsWithOutput'.
The JUnit TestSuite named 'TestsWithOutputTestSuite.java' reads this file,
creates a test case for each file listed in 'listTestsWithOutput'.

To run these tests outside of junit, use the target 'make X.java-test' where
X is the name of the test.  To run all of them, use 'make checkjava'

Note that when the test fails, a .java-ckd file is created that can be diff'ed
against the .java-expected file to show the differences.

2) .sh files that run a script of tests.

These can be run outside of junit using 'make checksh', or 'make X.sh-test'
to run an individual test named X.

However, these tests have also been converted to Junit tests, where they run
faster.  Each X.sh test file has been converted to a XTestCase.java junit
test case.  THIS IS A HAND-TRANSLATION.  IF YOU MODIFY A .sh TEST, YOU WILL 
NEED TO MAKE THE CORRESPONDING MODIFICATIONS TO THE TestCase program.

The junit versions of the .sh tests are not subject to the skip mechanism.
