* Fixes for https://github.com/antlr/antlr4/issues/2693
* Adding script for comparing Java and C# profile output.
* Update lexer grammar.
Tightening up the grammar rules. Still Java9.
* Tighten up grammar.
* Adding in new base classes for C# runtime tests for profiling.
* Complete test for Profile = true.
Update ProfileDescriptor to now parse and output profile. The grammar is asm8080 from grammars-v4, tightened up. The input is the example provided there, truncated to included fewer lines as that causes a null-ptr crash with the older runtime. I verified by modifying the .csproj in /tmp.
* Restructuring the Antlr C# runtime so that it is consistent with all other runtimes, a source directory (now antlr4/runtime/CSharp/src), and a test directory (antlr4/runtime/CSharp). In the test area, I added a test for profiling in issue-2593. This test requires the Antlr tool and Antlr C# tool to be build. The path is assumed in a relative path to the test, ../../../../tool/target/antlr4-*-SNAPSHOT-complete.jar, with globbing performed. The test simply checks the return result, output not important. There are no changes to the runtime C# source files other than placing them under src/. Several other build files were changed to reflect the new location of the Antlr C# runtime. I updated the instructions for users on how to build the runtime, including information on checking the environment--now explicitly specified here so people know what to install!
Install PHP to C:\tools\php. This fixes the AppVeyor tests, because
they were looking in C:\tools\php73, but the Chocolatey package has
recently moved to 7.4.
For some reason, possibly the new images that AppVeyor rolled out on Oct 22,
our AppVeyor tests now fail immediately, with msbuild complaining that there
are multiple solutions in the repository.
Address this by not using the default AppVeyor build section, but calling
msbuild ourselves explicitly in the build_script section. This way, we can
specify which .slns we want to build. I have specified the runtime and
runtime-testsuite Antlr4.vs2013.slns; the other ones didn't work for me in
this configuration.
Also, these builds were previously running with low / zero logging. As
far as I can tell, this gave AppVeyor no way to know whether the build has
succeeded or not. It certainly gives no way to diagnose any failures that do
occur. I have dialed the logging up on everything.
Also, remove the os declaration. That appears to be well out of date, and
isn't on AppVeyor's list of images any more. I presume that we've been
using their default image for some time.