Files
ioccc/bugs-1998-2003-partb.md
T
Landon Curt Noll 91149a7b69 improve bugs.md to allow easier links to a section
As the `bugs.md` has grown, the need to link into a specific
section of the `bugs.md` has become apparent.  While there
are links the entry's `bugs.md` section, due to the
complexity of a head such as:

the links within the header will make it hard for
markdown to html to form such links.

Instead the level 2 header has been transformed into:

vvvvvvvvvvvvvvvvvvv--- level 2 header below ---vvvvvvvvvvvvvvvvvvv

^^^^^^^^^^^^^^^^^^^--- level 2 header above ---^^^^^^^^^^^^^^^^^^^

We made a test modification to `1984/laman/README.md` to
refer to this section as:

vvvvvvvvvvvvvvvvvvv--- reference to the level 2 header below ---vvvvvvvvvvvvvvvvvvv

The current status of this entry is:

```
STATUS: INABIAF - please **DO NOT** fix
```

For more detailed information see [bugs.md#1984/laman](/bugs.md#1984-laman).
^^^^^^^^^^^^^^^^^^^--- reference to the level 2 header above ---^^^^^^^^^^^^^^^^^^^

One advantage of the above section is that it contains only
a single link into `bugs.md`.

In particular we use the following string as a link into `bugs.md`:

    /bugs.md#1984-laman

We plan to verify that this is the proper way to link into `bugs.md`
after we push this commit.

During these edits, we discovered a set of quasi-duplicated
big entries spanning from 1998 thru 2013.  We say quasi-duplicated
because the repeated information was not the same.

We made a guess in `bugs.md` as to which parts were correct,
however our guess may have been incorrect.  Therefore, we
preserved the two sets in two files.

The 1st set of 1998 thru 2013 is found in: `bugs-1998-2003-parta.md`.
The 2nd set of 1998 thru 2013 is found in: `bugs-1998-2003-partb.md`.

Please inspect the sets, and if needed, update `bugs.md` as needed.
Please remove `bugs-1998-2003-parta.md` and `bugs-1998-2003-partb.md`
when you are done.
2023-10-29 18:24:02 -07:00

3.4 KiB

1998

1998/schnitzi (README.md)

STATUS: INABIAF - please DO NOT fix

Cody Boone Ferguson fixed this to work for modern systems but he notes a couple compile warnings to ignore.

First if you get the warning:

warning: incompatible implicit declaration of built-in function 'printf' [-Wbuiltin-declaration-mismatch]
   11 | void  g(){ O=j; printf(_); }
      |                 ^~~~~~

please do NOT change it! Doing so will break the generated output.

Another warning that was introduced but should be ignored (it's required) is:

warning: assignment to 'char *' from incompatible pointer type 'char **' [-Wincompatible-pointer-types]
   55 | main(int v,char **c){ O=r_; _d=c;
      |                               ^

Please DO NOT change this either.

If there are any other warnings triggered by your compiler please DO NOT fix those either!

Another important note is that as the number passed into the program gets bigger the number of lines of output gets substantially larger. For instance:

$ ./schnitzi 9|wc -l
  771999

1999

There was no IOCCC in 1999.

2000

2000/primenum (README.md)

STATUS: INABIAF - please DO NOT fix

This program does not do what you might think it does! Running it like:

./primenum 13

will seemingly wait for input exactly because it is waiting for input. See the README.md file or look at the source.

It also has main() return void even though this is non-standard. Please do not fix this (in fact it was originally done but rolled back).

2001

2001/bellard (README.md)

STATUS: probable bug (possibly depending on system) - please help test and if necessary fix

Cody Boone Ferguson fixed an initial segfault and he also fixed the supplementary program bellard.otccex.c to test the entry on to not segfault and seemingly work but he has no 32-bit system to test any further fixes; we would greatly appreciate anyone's help! It appears that this entry will require major debugging and to make it work one might need to have a deep understanding of the ELF format.

The author said that they compiled it with gcc version 2.95.2. We don't know if a certain gcc version is necessary but it might be helpful to download and compile that version to test it.

2001/westley (README.md)

STATUS: missing files - please provide them

The author referred to the file card.gif but this appears to be missing. Do you have it? If you do please provide it and thank you!

STATUS: uses gets() - change to fgets() if possible (in some cases getline() works)

The code also uses gets() which, without redirecting stderr to /dev/null, can show an obnoxious warning every time it's run. In the script 2001/westley/westley.sh that Cody Boone Ferguson added stderr is in fact redirected to /dev/null to prevent this warning but it would probably be better if it was changed to use fgets() (which he might end up doing).

2002

There was no IOCCC in 2002.

2003

There was no IOCCC in 2003.