I've rebased my changes against your master, so it should apply cleanly.
Here is a list of changes:
Switched to CMake. Works on GNU/Linux and OSX with both gcc and clang. With some restrictions, it also works on Windows with Visual Studio 2017. Removed the old build system.
Removed legacy code not needed in ANSI-C compatible environments.
Moved docs to separate directory.
Split up the *.tst.in files into separate test files.
Massive deduplication in test code.
Fixed a bug where a visitation flag would be undone in every other traversal (22ac876853).
Fixed an uninitialised memory bug (e346117b2f).
Fixed an invalid memory access bug (c3621504).
Still open:
The test CMakeLists.txt are quite bulky. I'd like to rename the tests to speaking names instead of just test42.c before addressing this.
Reliance on bash, so not all tests can be run on Windows.
With Visual Studio, there is a bug where sometimes the dependency on sgramm.c is not resolved. I have no idea what causes this. Can be fixed by building the sgramm_c target explicitly first.
Docs could maybe be generated instead of just lying around.
I think these still open issues have lower priority and I would leave them for later.
This pull request mainly addresses #17.
About the GNU coding standards: I tried to use them once I saw your comment https://github.com/vnmakarov/yaep/pull/16#issuecomment-431691743, but older commits may be broken in this respect; sorry.
I've rebased my changes against your master, so it should apply cleanly.
Here is a list of changes:
Still open:
sgramm.c
is not resolved. I have no idea what causes this. Can be fixed by building the sgramm_c target explicitly first.I think these still open issues have lower priority and I would leave them for later.