The code that was the alt code now works entirely with gcc! The ver2 and
ver3 do not yet work with clang but the other versions do so it seems
appropriate to make this the main version and remove the alt code and
alt scripts.
I will continue to work on this in between the README.md files but this
feels like great progress and as it was all I felt up to at this time it
is definitely worth the effort and time.
The alt code has been changed so that in addition to the main feature
working it will also generate ver0 and ver1 correctly; ver2 and ver3
cannot be compiled still. This is not perfect but it is progress. I will
look at this further later most likely.
Added compile.alt.sh to compile the alt code and generate the alt code
generated code. It generates it in the file name form alt.ver[0-3].c and
the code will be compiled as such.
Added try.sh to demonstrate the main (original) program. This is because
there are a lot of commands to try.
Added try.alt.sh to demonstrate the alt program (not trying the ver2 and
ver3, naturally). The rationale is the same as for try.sh.
The Makefile has been updated for these changes.
Updated .gitignore as a number of new files will be created when running
compile.alt.sh.
The bugs.md has been updated as there has been some progress made. The
hint was removed at this time as it's not applicable now; the problem of
main() args not being allowed is no longer true. However the status line
has not been updated because the root of the problem is this. There are
currently no hints because I do not have any yet.
The thanks file has also been updated for the new scripts as well as the
situation being changed.
Unfortunately the fix to let the main program compile with clang even
breaks some versions generated (see compile.sh) in syntax error so even
gcc cannot compile those. Therefore it's now alt code. The alt version
will compile with clang and the main feature of the program will work
but the program cannot generate every version of the program.
The bugs.md and thanks-for-fixes.md have been updated along with the
README.md.
In the README.md there is a different heading level for the alt code
sections to compare to another as we try and figure out what heading
levels to use.
I changed the delay to 0 in the compile.sh script but one can set it to
another value if they like.
This entry will have to be worked on more at another time.
Some important notes here should be made. First of all with clang the
recommended commands in the README.md (which was also formatted and typo
fixed) will seemingly generate the correct files but still only
westley.c and ver0.c will compile with clang. With gcc they do compile
and seem to work as expected.
However I found a bug in the original code too where ver2 will sometimes
segfault. This also goes for the fix (again when compiled with gcc).
I did get ver[123].c to also compile but this seemed to cause invalid
output in some of the commands. That being said it might (though I don't
think so at this time) have been not knowing exactly what should be
displayed. Maybe I will look at it in the future but at least it now
works with clang even if not all of the generated files will compile
that way. Still macOS users can now take a look at the different output
of the program which seems good to me (it does not even have to be
source code that is output).
These things have been noted in the README.md as well.
We we move 1988-2004 entries from all of a year's winning entries
in a single directory to each winner being in their own sub-directory
under the given year directory.