Rename 'nil' to '_nil' to avoid conflicts with Cocoa 'nil' macro