diff --git a/1989/paul/Makefile b/1989/paul/Makefile index 814f9d964..f6f214d94 100644 --- a/1989/paul/Makefile +++ b/1989/paul/Makefile @@ -130,7 +130,6 @@ all: data ${TARGET} supernova deep_magic magic charon pluto ${PROG}: ${PROG}.c - @echo "NOTE: this entry will likely dump core with arm64 chips." ${CC} ${CFLAGS} $< -o $@ ${LIBS} # alternative executable diff --git a/1989/paul/README.md b/1989/paul/README.md index 2c18db7c3..1406917ba 100644 --- a/1989/paul/README.md +++ b/1989/paul/README.md @@ -11,14 +11,15 @@ make all -NOTE: this entry will likely dump core with arm64 chips. We could get it to work -with modern systems with x86_64 but systems but at least with macOS arm64 -this program dumps core. We could not test Intel Macs. ## Try: ./paul +[Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed a segfault under +macOS. The problem was that the int (from `#define f`) should be a long. This +became apparent when he was using lldb and saw that the type of a pointer was +long. Thank you Cody for your assistance! ## Judges' comments: diff --git a/1989/paul/paul.c b/1989/paul/paul.c index 932e368e8..15fac315a 100644 --- a/1989/paul/paul.c +++ b/1989/paul/paul.c @@ -1,5 +1,5 @@ #include -#define f int +#define f long #define v (void)printf( #define x ),exit(1); #define y ){if(n)c=z(n,u),u=n,n=c;o[i]=n?'0'+(1&*n):'0';} diff --git a/bugs.md b/bugs.md index 97630a15a..c495412b3 100644 --- a/bugs.md +++ b/bugs.md @@ -361,11 +361,6 @@ better spent on something else here or in that elusive thing called 'real life'. # 1989 -## [1989/paul](1989/paul/paul.c) ([README.md](1989/paul/README.md)) -## STATUS: known bug - please help us fix - -This entry works under linux but segfaults under macOS. We'll be working on this -but if you have a fix we'll be happy to look at it. ## [1989/westley](1989/westley/westley.c) ([README.md](1989/westley/README.md)) ## STATUS: main() function args not allowed - please help us fix