Merge pull request #948 from xexyl/1992-lush
Improve fgets() fix to 1992/lush
This commit is contained in:
3 files changed
+9
-7
No files matched your search
@@ -1,9 +1,6 @@
|
||||
# Worst Abuse of the C Preprocessor
|
||||
|
||||
Ed Luke
|
||||
Mississippi State University
|
||||
P.O. Box 6176
|
||||
Mississippi State, MS 39762
|
||||
US
|
||||
|
||||
|
||||
@@ -20,8 +17,6 @@ make all
|
||||
./runme.sh
|
||||
```
|
||||
|
||||
For the original entry see the [archive tarball](/archive/archive-1992.tar.bz2).
|
||||
|
||||
|
||||
## Judges' remarks:
|
||||
|
||||
|
||||
+4
-2
@@ -1,3 +1,5 @@
|
||||
#define gets(_) fgets((_),999,stdin)
|
||||
#line 1
|
||||
#define f 000:
|
||||
char
|
||||
*s,*
|
||||
@@ -63,8 +65,8 @@
|
||||
;;;}
|
||||
;for
|
||||
( ;
|
||||
fgets
|
||||
(_,999,stdin);
|
||||
gets
|
||||
(_);
|
||||
) {
|
||||
for(
|
||||
#define f 301:
|
||||
|
||||
@@ -585,6 +585,11 @@ which can be confusing) and also added the `runme.sh` script to demonstrate it
|
||||
(using make was problematic). Cody notes that unfortunately this does not work
|
||||
with clang due to different compiler messages.
|
||||
|
||||
Cody later improved the `fgets()` change to look more like the original i.e. it
|
||||
now uses a redefined `gets()`. This did require modifying the line number with
|
||||
`#line 1` under the macro `gets()`. Still this cannot work with clang due to
|
||||
different compiler messages. See [bugs.md](/bugs.md) for details.
|
||||
|
||||
|
||||
## [1992/westley](1992/westley/westley.c) ([README.md](1992/westley/README.md]))
|
||||
|
||||
|
||||
Reference in new issue
Block a user