I just used the tcc executable that
lrizzo had at his web site. I do not know how he built it.
I see by modifying your program to print argc that this build of tcc does not handle command-line parameters. When tested on my K5, it shows that argc has a large negative value that changes with each run, and argv[0] is a NULL pointer.
I had not noticed that behavior before, but I had noticed that the tcc "-run" parameter did not run C programs as a script, so it has more than one bug. I suppose we need to rebuild tcc from source to see if that fixes it.
It seems to work okay for things that do not need parameters. I do not recall what "splattered into bin" thing that
twobob is talking about.