This code creates an EXC_BAD_ACCESS error: class NSDate def to_s NSLog "#{__LINE__} NSDate#to_s %@", self 'hello' end end NSDate.date.to_s If I change the NSLog statement to: NSLog "#{__LINE__} NSDate#to_s hello" Then I get the log entry and no EXC_BAD_ACCESS. Any idea what's causing this? Thanks