It appears the following retain and release statements are no longer just good practice but are required.
entryDate = date;
If you don’t add that code you will get an error:
Program received signal: “EXC_BAD_ACCESS”.
Oddly when I run the downloaded example code the dealloc function is never called in LotteryEntry.m. At least it never prints out that it is deallocating even though the example in the book shows it doing so and it should be. I’ve copied the code line for line and have the garbage collector turned off. I’m guessing it is some kind of compile setting in the downloaded project file.
Again, adding the retain and release code above, which is suggested in the book, fixes the problem.